就像C语言一样,您可以将长行分解为多个短行。但是在Python中,如果我这样做,就会出现缩进错误…这可能吗?
从# EYZ0:
对长行进行换行的首选方法是使用Python的隐含行 括号和大括号内的延续。如有需要,请 可以在表达式周围额外添加一对括号,但有时 使用反斜杠看起来更好。确保将继续的行缩进 适当。< / p >
隐式续行示例:
a = some_function( '1' + '2' + '3' - '4')
关于二进制操作符周围的换行,它继续说:
几十年来,推荐的风格是在二进制操作符之后中断。 但这可能在两个方面损害可读性:操作符往往分散在屏幕上的不同列上,并且每个操作符都从其操作数移动到上一行
在Python代码中,只要约定在局部一致,就允许在二进制操作符之前或之后进行换行。对于新代码,建议使用Knuth的样式(换行符之前操作符)。
显式续行示例:
a = '1' \ + '2' \ + '3' \ - '4'
它在Python中也适用:
>>> 1+\ 2+\ 3 6 >>> (1+ 2+ 3) 6
据我所知,这是可以做到的。Python为三引号字符串("""like this""")提供隐式续行(在圆括号、括号和字符串中),续行的缩进并不重要。有关更多信息,您可能想要阅读来自python.org的关于词法分析的这篇文章。
"""like this"""
做这件事的方法不止一种。
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'
引用# EYZ0:
首选的长包装方式 行是通过使用Python的隐含 括号、括号和大括号内的行续。如果有必要, 您可以在表达式周围添加一对额外的括号,但是 有时使用反斜杠看起来更好。确保将继续的行缩进 适当。二进制转换的首选位置 是后运算符,而不是在它前面
首选的长包装方式 行是通过使用Python的隐含 括号、括号和大括号内的行续。如果有必要, 您可以在表达式周围添加一对额外的括号,但是 有时使用反斜杠看起来更好。确保将继续的行缩进 适当。二进制转换的首选位置
如果你想给变量赋一个长字符串,你可以这样做:
net_weights_pathname = ( '/home/acgtyrant/BigDatas/' 'model_configs/lenet_iter_10000.caffemodel')
不要添加任何逗号,否则您将得到一个包含许多字符串的元组!
当尝试输入连续的文本(比如,一个查询)时,不要在行末放逗号,否则你会得到一个字符串列表,而不是一个长字符串:
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的评论,抱歉,没有看到。:/
acgtyrant
DB相关代码在多行中看起来更容易,用一对三引号括起来:
SQL = """SELECT id, fld_1, fld_2, fld_3, ...... FROM some_tbl"""
而不是下面的一行字:
SQL = "SELECT id, fld_1, fld_2, fld_3, .................................... FROM some_tbl"