一尘不染

一次遍历多个列表的最佳方法是什么?

python

假设我有两个或两个以上相同长度的列表。遍历它们的好方法是什么?

ab是列表。

 for i, ele in enumerate(a):
    print ele, b[i]

要么

for i in range(len(a)):
   print a[i], b[i]

还是我缺少任何变体?

使用一个相对于另一个有什么特别的优势吗?


阅读 127

收藏
2020-12-20

共1个答案

一尘不染

通常的方法是使用zip()

for x, y in zip(a, b):
    # x is from a, y is from b

这将停止两个iterables时较短ab耗尽。另外值得注意的是:(itertools.izip()仅适用于Python
2)和itertools.izip_longest()(适用itertools.zip_longest()于Python
3)。

2020-12-20