我在PEP 8风格指南中找不到答案。
是否有可能通过使用圆括号而不是反斜杠来分解长for
语句?
以下将导致语法错误:
for (one, two, three, four, five in
one_to_five):
pass
答案 0 :(得分:4)
如果长篇部分是拆包,我会避免它:
for parts in iterable:
one, two, three, four, five, six, seven, eight = parts
或者如果真的很长:
for parts in iterable:
(one, two, three, four,
five, six, seven, eight) = parts
如果iterable
是一个长表达式,你应该在循环之前将它放在一行:
iterable = the_really_long_expression(
eventually_splitted,
on_multiple_lines)
for one, two, three in iterable:
如果两者都很长,那么你可以合并这些约定。
答案 1 :(得分:3)
是的,您可以在in
关键字后使用括号:
for (one, two, three, four, five) in (
one_to_five):
pass
在您提出的问题中,您不小心删除了左括号,导致出现语法错误。