就像C一样,你可以将一条长线分成多条短线。但是在Python中,如果我这样做,就会出现缩进错误...可能吗?
长行换行的首选方法是使用 Python 的隐含行 括号、方括号和大括号内的延续。如果有必要的话,你 可以在表达式周围添加一对额外的括号,但有时 使用反斜杠看起来更好。确保缩进续行 适当地。
隐式续行示例:
a = (
'1'
+ '2'
+ '3'
- '4'
)
关于二元运算符换行的主题,它接着说:
几十年来,推荐的风格是在二元运算符之后中断。 但这可能会以两种方式损害可读性:运算符往往会分散在屏幕上的不同列中,并且每个运算符都会从其操作数移开并移动到上一行。
显式续行示例:在Python代码中,只要约定在本地一致,就允许在二元运算符之前或之后中断。对于新代码,建议使用 Knuth 风格(在运算符之前换行)。
a = '1' \
+ '2' \
+ '3' \
- '4'
1)。长篇大论:
>>> def print_something():
print 'This is a really long line,', \
'but we can make it across multiple lines.'
2)。使用括号:
>>> def print_something():
print ('Wow, this also works?',
'I never knew!')
3)。再次使用
\
:
>>> x = 10
>>> if x == 10 or x > 0 or \
x < 100:
print 'True'
引用
PEP8:
长包的首选方式 行是通过使用Python的隐含 圆括号、方括号和大括号内的续行。如果有需要的话, 您可以在表达式周围添加一对额外的括号,但是 有时使用反斜杠看起来更好。确保缩进续行 适当地。破解二进制文件的首选位置 运算符位于运算符之后,而不是之前。
net_weights_pathname = (
'/home/acgtyrant/BigDatas/'
'model_configs/lenet_iter_10000.caffemodel')
不要添加任何逗号,否则你会得到一个包含很多字符串的元组!
>>> 1+\
2+\
3
6
>>> (1+
2+
3)
6
queryText= "SELECT * FROM TABLE1 AS T1"\
"JOIN TABLE2 AS T2 ON T1.SOMETHING = T2.SOMETHING"\
"JOIN TABLE3 AS T3 ON T3.SOMETHING = T2.SOMETHING"\
"WHERE SOMETHING BETWEEN <WHATEVER> AND <WHATEVER ELSE>"\
"ORDER BY WHATEVERS DESC"
有点像这样。
有一条来自
acgtyrant
的评论,抱歉,没看到。 :/
SQL = """SELECT
id,
fld_1,
fld_2,
fld_3,
......
FROM some_tbl"""
比下面的一根巨大的长线:
SQL = "SELECT id, fld_1, fld_2, fld_3, .................................... FROM some_tbl"
"""like this"""
) 具有隐式续行(在圆括号、中括号和字符串内),并且续行的缩进并不重要。有关更多信息,您可能需要阅读来自 python.org 的关于词法分析的这篇文章。