Python通过列表列表来迭代索引序列中的新列表

您将如何迭代列表列表,例如:

[[1,2,3,4], [5,6], [7,8,9]]

并通过抓取每个列表的第一个项目,然后第二个等构造一个新的列表.所以上面是这样的:

[1, 5, 7, 2, 6, 8, 3, 9, 4]
最佳答案
您可以使用列表解析以及itertools.izip_longest(或Python 3中的zip_longest)

from itertools import izip_longest
a = [[1,2,3,4], [5,6], [7,8,9]]
[i for sublist in izip_longest(*a) for i in sublist if i is not None]
# [1, 5, 7, 2, 6, 8, 3, 9, 4]

转载注明原文:Python通过列表列表来迭代索引序列中的新列表 - 代码日志