Python中冗长的单行字符串,不超过最大行长
如何在代码中打断一个长的单行字符串,并使该字符串与代码的其余部分缩进?没有这个案例的任何例子 正确的输出,但奇怪地缩进:Python中冗长的单行字符串,不超过最大行长,python,string,Python,String,如何在代码中打断一个长的单行字符串,并使该字符串与代码的其余部分缩进?没有这个案例的任何例子 正确的输出,但奇怪地缩进: if True: print "long test long test long test long test long \ test long test long test long test long test long test" >>> long test long test long test long test long test lo
if True:
print "long test long test long test long test long \
test long test long test long test long test long test"
>>> long test long test long test long test long test long test long test long test long test long test
输出错误,但在代码中看起来更好:
if True:
print "long test long test long test long test long \
test long test long test long test long test long test"
>>> long test long test long test long test long test long test long test long test long test long test
哇,有很多快速的答案。谢谢 相邻字符串在编译时连接:
if True:
print ("this is the first line of a very long string"
" this is the second line")
输出:
this is the first line of a very long string this is the second line
可以使用尾随的反斜杠连接单独的字符串,如下所示:
if True:
print "long test long test long test long test long " \
"test long test long test long test long test long test"
等等。为什么没有人推荐三重报价
print """ blah blah
blah .............."""
这段代码有语法错误--您需要像其他答案一样添加()或\并且+符号是多余的。下面是参考:很可能是因为它比当前接受的答案包含更多的信息,并且因为它更“Pythonic”(quoth PEP 8:“包装长行的首选方法是在括号、括号和大括号内使用Python的隐含行继续符”)。可能也有一些个人偏好,但作为答案的作者,我不能对此发表评论。@Noah,我不能再同意你的观点了。我认为它被接受的唯一原因是它的最后一行缩进与@JcMaco的原始帖子之间的一致性。这很琐碎,也没有说服力。事实上,我更喜欢PEP 8风格也很好。对不起,昨晚没有添加任何补充信息,因为我当时必须上床睡觉,还有…我的蹩脚英语。+1因为我是pythonic…这应该是公认的答案:-)。也许你会因为超过公认的答案而获得徽章:-)。尽管我同意最好的方法是使用长线包装括号等,我认为如果它们还没有出现,就不应该添加到表达式中,特别是当它们的使用不是完全无害的时候。例如
print(“Hello”,“world”)
与print“Hello”,“world”)不一样“
。我更喜欢公认的答案。@Scott Griffiths:我认为你的例子不太成功。print(“Hello”、“world”)与print“Hello”、“world”不同,但print“Hello”“world”与print(“Hello”“world”)完全相同。请注意缺少逗号运算符。因为它在第二个和第三个blah之间留下了巨大的空间,而没有您需要的特殊格式。还因为括号的概念可以推广到其他东西。。。例如,一个函数有很多参数,或者有很长的数学公式。括号更像Python。请参见Google Python样式指南中的示例:
if True:
print "long test long test long test "+
"long test long test long test "+
"long test long test long test "
print """ blah blah
blah .............."""