1

请注意,这是一个简化的示例是否可以执行类似的操作

l=[[1,2,3],["a","b","c"],["x","y","z"]

然后有一个 for 循环遍历每个列表中的所有第一项,然后是第二项,然后是第三项。

4

1 回答 1

2

您可以使用该zip(...)功能。

>>> for elem in zip(*l):
        for a in elem:
            print(a)


1
a
x
2
b
y
3
c
z

此外,您可以将zip_longest(...)( izip_longestfor Py2x) 用于长度不均匀的列表。

>>> from itertools import zip_longest
>>> l=[[1,2,3],["a","b","c"],["x","y"]]
>>> for elem in zip_longest(*l, fillvalue='Empty'):
        print(elem)


(1, 'a', 'x')
(2, 'b', 'y')
(3, 'c', 'Empty')
于 2013-08-06T18:16:52.263 回答