V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
PhanKiap
V2EX  ›  Python

字符串太长不想写在一行上,能否写成多行

  •  
  •   PhanKiap · Oct 12, 2015 · 10850 views
    This topic created in 3862 days ago, the information mentioned may be changed or developed.
    long("长长长长
          长长
          长")
    

    保持缩进

    29 replies    2015-10-14 11:43:10 +08:00
    cylin
        1
    cylin  
       Oct 12, 2015
    print("hello" +
    " " +
    "world")

    str="hello"
    str+=" "
    str+="world"
    print(str)
    jky
        2
    jky  
       Oct 12, 2015 via Android   ❤️ 1
    S = ("长长长"
    "长长长")
    oyasmi
        3
    oyasmi  
       Oct 12, 2015


    long("长长长长"
    "长长"
    "长")
    loading
        4
    loading  
       Oct 12, 2015 via iPhone
    @cylin
    @jky
    @oyasmi

    听说过 三引号
    loading
        5
    loading  
       Oct 12, 2015 via iPhone
    搜索 python 三引号
    jky
        6
    jky  
       Oct 12, 2015 via Android
    @loading 三引号似乎不能保持缩进?
    v2gba
        7
    v2gba  
       Oct 12, 2015
    print("""
    12345
    ++++6
    ++++++++7
    """)
    14
        8
    14  
       Oct 12, 2015   ❤️ 1
    aec4d
        9
    aec4d  
       Oct 12, 2015
    当做函数参数引用的时候用 8 楼 因为美观
    不当参数的时候用一楼的第二种 个人认为美观
    仅仅因为太长不想写在一行 那么你万万不要用三行字符串
    因为
    """a
    b""" != 'ab'
    beibeijia
        10
    beibeijia  
       Oct 12, 2015   ❤️ 1
    楼上正解 python 编程风格指南里有提到的 楼主可以去看看 附链接: http://docs.python-guide.org/en/latest/writing/style/#line-continuations
    beibeijia
        11
    beibeijia  
       Oct 12, 2015
    额 我说的是 8 楼。==!
    kifile
        12
    kifile  
       Oct 12, 2015
    fmt.Println(`常常常常
    就是这么长`)
    aliipay
        13
    aliipay  
       Oct 12, 2015
    @14 为毛我的提示 IndentationError: unexpected indent ,在换行的地方
    C0VN
        14
    C0VN  
       Oct 12, 2015
    难道不是行尾加一个 \ 就可以换行了?
    Delbert
        15
    Delbert  
       Oct 12, 2015 via Android
    行尾加换行符\
    aec4d
        16
    aec4d  
       Oct 12, 2015
    @xavierskip
    @Delbert
    def foo():
    a = '1\
    2'
    print a

    foo()
    打印出来的不是 12 我以前被坑过-_-
    lxy42
        17
    lxy42  
       Oct 13, 2015
    @aec4d a = '1' + \
    '2'
    bigcoon
        18
    bigcoon  
       Oct 13, 2015 via iPhone
    我觉得出现长字符串都是代码结构有问题
    C0VN
        19
    C0VN  
       Oct 13, 2015
    @aec4d 再函数中确实是。那就这样吧, pycharm 生成的写法就是这样

    zonghua
        20
    zonghua  
       Oct 13, 2015 via iPhone
    @xavierskip 这是把换行符转义了
    java javascript 的话一般都是用 +
    pandada8
        22
    pandada8  
       Oct 13, 2015
    bazingaterry
        23
    bazingaterry  
       Oct 13, 2015
    用\不就可以了?
    cxbig
        24
    cxbig  
       Oct 13, 2015
    长字符串这种东西不是应该放在 i18n 之类的翻译文件里的么?
    582033
        25
    582033  
       Oct 13, 2015 via Android
    定界符
    aec4d
        26
    aec4d  
       Oct 13, 2015
    @xavierskip 哇哦 感谢提醒 自己搞错了
    gamexg
        27
    gamexg  
       Oct 13, 2015   ❤️ 1
    pycharm 写字符串觉得长了直接一个回车,单引号时 IDE 会自动处理的。
    shuiniushushu
        28
    shuiniushushu  
       Oct 13, 2015
    js 有继行符
    "abc\
    xxx\
    bcd"
    其他语言不知道有没有
    okletswin
        29
    okletswin  
       Oct 14, 2015
    python pep8 autoformat
    好多 IDE 都支持此插件, 文件保存时自动完善格式,自动拆行
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2973 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 110ms · UTC 08:40 · PVG 16:40 · LAX 01:40 · JFK 04:40
    ♥ Do have faith in what you're doing.