2

当同时循环多个 python 列表时,我使用zip-function,我还想检索循环索引。为此,循环索引的单独列表可以包含在 zip 函数中,例如:

for index, item1, item2 in zip(range(len(list1)), list1, list2):
    <do something>

有没有更好的方法来做到这一点(比如在enumerate-function 中)?

4

2 回答 2

8

您可以解压缩以下内容中的所有内容for

>>> for i, (x1, x2) in enumerate(zip([1,2,3], [3,4,5])):
...     print i, x1, x2
... 
0 1 3
1 2 4
2 3 5
于 2012-11-23T13:16:13.490 回答
5

您可以使用它(注意在解包嵌套元组enumerate()之后括号的位置):for

>>> l1 = range(0, 10)
>>> l2 = range(10, 20)
>>> for index, (item1, item2) in enumerate(zip(l1, l2)):
...   print index, item1, item2
... 
0 0 10
1 1 11
2 2 12
3 3 13
4 4 14
5 5 15
6 6 16
7 7 17
8 8 18
9 9 19
于 2012-11-23T13:16:25.693 回答