1

我有一个像这样的for循环:

a = [[1,2]]
for (x, y in a):
    pass

除了 for 循环解包几个值,所有变量名都很长且具有描述性。

我想使用在 python 中一直对我有用的 perens 来换行,但是当我尝试时:

a = [[1,2]]
for (x, y in
        a):
    pass

我有语法错误?

包装长循环线的最佳方法是什么?

更新:

我也试过:

for ((x, y)
        in a):
    pass

并得到一个语法错误。

4

2 回答 2

4
for (x,y in a):

本身就是一个语法错误。您可以使用

for (x,y) in a:

它也可以跨越多行,例如:

>>> for (super_long_descriptive_name_1,
...      super_long_descriptive_name_2) in a:
...     pass
... 
于 2013-08-14T23:45:55.807 回答
0

您的语法错误来自于()在您的条件周围加上标记,python 不需要这个。

而不是这个:

for (x, y in a):
  pass

尝试这个:

for x, y in a:
  pass

如果您愿意,可以将元组括在括号中以提高可读性

for (x, y) in a:
  pass
于 2013-08-15T00:08:47.867 回答