有人能解释一下下面的意思吗?
for value1,value2 in List1:
do_something()
我知道
for x1 in List2:
do_something()
这里的for在List2
和x1
上迭代是对List2
中的每个项的引用,但我不知道第一个项的作用。
就像
for x in seq:
在seq
上迭代,并将每个元素分配给x
,
for a, b in seq:
将在CCD_ 6上迭代并将每个元素分配给CCD_。它相当于
for x in seq:
a, b = x
a, b = x
做什么?好吧,这是序列拆包。Python将尝试将x
视为一个2元素序列,并将x
的元素分配给a
和b
。
第一个执行序列拆包。在正常分配中也有可能:
mylist = [1, 2, 3]
a, b, c = mylist
将列表的元素分配给变量a
、b
和c
。
同样的道理也在循环中起作用。
for x in iterable:
a, b, c = x
可以缩短为
for a, b, c in iterable:
...
如果iterable是一个只包含3个项的元素(主要是元组)的iterable,例如
[(1, 2, 3), (5, 4, 3), etc.]