我已阅读多行语句的各种指南,但找不到包含需要拆分多行的注释,变量,文本和文本的指南。
我正在努力拆分下面的代码:
ex = 25
cmd = 'raspistill -o ' + filename + ' -t 1000 -ex ' + ex
带有评论的多行,如下所示:
cmd = 'raspistill -o ' + filename + \ # explain line 1
' -t 1000' \ # explain line 2
'-ex ' + ex # explain line 3
这是将代码分割成多行的最佳方法吗?
答案 0 :(得分:1)
您可以使用括号而不是反斜杠来执行行继续:
a = ( "aaa" + # foo
"bbb" + # bar
"ccc" # baz
)
基本上当你在任何类型的括号中都有一个表达式时,python不会在行尾结束语句,但会先等到它找到相应的结束括号。
我发现它比反斜杠更具可读性和惯用性。
答案 1 :(得分:0)
我不确定您使用的语言是什么,但这句话可能没有按照您的想法进行解析:
cmd = 'raspistill -o ' + filename + \ # explain line 1
' -t 1000' \ # explain line 2
'-ex ' + ex # explain line 3
在Python中,您会收到错误:
SyntaxError: unexpected character after line continuation character
问题在于,行继续符(反斜杠\
)不会转义换行符,它只会转义后续空格。这是因为新行不遵循反斜杠。在您的评论之后,它要等到很久以后才会出现。所以你这里仍然有3条独立的线。
删除额外的评论并将它们放在前面,例如:
# explain lines 1, 2, and 3
#
cmd = 'raspistill -o ' + filename + \
' -t 1000' \
'-ex ' + ex