换行原始字符串
Linebreak a raw string
我正在寻找一种在 python 中对长原始字符串进行换行的好方法。
这样做的原因是,我经常将 windows 路径与 pathlib
s Path
一起使用,因为这使我可以方便地在 windows 和 *nix 上进行复制粘贴像这样:
from pathlib import Path
my_long_path = Path(r'C:some\very\long\path')
自然地,文件路径会变得很长,为了更好的代码格式,我有时想换行原始字符串。
三重引号不起作用,因为换行符:
a = r'''some\
very\long\path'''
--> 'some\\nvery\long\path'
所以我知道的唯一选择是:
a = r'some\'\
r'very\long\path'
它有效,但感觉有点不pythonic。有更好的方法吗?
您可以使用括号:
这也可以在这里找到 How to write very long string that conforms with PEP8 and prevent E501
s = ("this is my really, really, really, really, really, really, " # comments ok
"really long string that I'd like to shorten.")
print(s)
>>>> this is my really, really, really, really, really, really, really long string that I'd like to shorten.
我正在寻找一种在 python 中对长原始字符串进行换行的好方法。
这样做的原因是,我经常将 windows 路径与 pathlib
s Path
一起使用,因为这使我可以方便地在 windows 和 *nix 上进行复制粘贴像这样:
from pathlib import Path
my_long_path = Path(r'C:some\very\long\path')
自然地,文件路径会变得很长,为了更好的代码格式,我有时想换行原始字符串。
三重引号不起作用,因为换行符:
a = r'''some\
very\long\path'''
--> 'some\\nvery\long\path'
所以我知道的唯一选择是:
a = r'some\'\
r'very\long\path'
它有效,但感觉有点不pythonic。有更好的方法吗?
您可以使用括号: 这也可以在这里找到 How to write very long string that conforms with PEP8 and prevent E501
s = ("this is my really, really, really, really, really, really, " # comments ok
"really long string that I'd like to shorten.")
print(s)
>>>> this is my really, really, really, really, really, really, really long string that I'd like to shorten.