考虑到:
e = 'a' + 'b' + 'c' + 'd'
我怎么把上面的内容写成两行呢?
e = 'a' + 'b' +
'c' + 'd'
考虑到:
e = 'a' + 'b' + 'c' + 'd'
我怎么把上面的内容写成两行呢?
e = 'a' + 'b' +
'c' + 'd'
当前回答
你可以在圆括号和大括号之间换行。此外,你可以将反斜杠字符\附加到一行来显式地中断它:
x = (tuples_first_value,
second_value)
y = 1 + \
2
其他回答
这可能不是python的方式,但我通常使用带有join函数的列表来编写长字符串,就像SQL查询一样:
query = " ".join([
'SELECT * FROM "TableName"',
'WHERE "SomeColumn1"=VALUE',
'ORDER BY "SomeColumn2"',
'LIMIT 5;'
])
你可以在圆括号和大括号之间换行。此外,你可以将反斜杠字符\附加到一行来显式地中断它:
x = (tuples_first_value,
second_value)
y = 1 + \
2
使用反斜杠来结束一行的危险在于,如果在反斜杠之后添加了空格(当然,这很难看到),反斜杠就不再起到您所认为的作用了。
参见Python习语和反习语(适用于Python 2或Python 3)了解更多信息。
还可以在多行中中断方法(obj.method())的调用。
将命令括在圆括号“()”中,并跨越多行:
> res = (some_object
.apply(args)
.filter()
.values)
例如,我发现在链上调用Pandas/Holoviews对象方法很有用。
这条线是什么?你可以在下一行有参数,没有任何问题:
a = dostuff(blahblah1, blahblah2, blahblah3, blahblah4, blahblah5,
blahblah6, blahblah7)
否则你可以这样做:
if (a == True and
b == False):
或者使用显式换行:
if a == True and \
b == False:
查看样式指南了解更多信息。
使用括号,你的例子可以写在多行:
a = ('1' + '2' + '3' +
'4' + '5')
使用显式换行也可以得到同样的效果:
a = '1' + '2' + '3' + \
'4' + '5'
注意,样式指南说使用隐式的括号继续是首选,但在这种特殊情况下,仅仅在表达式周围添加括号可能是错误的方式。