我有两个大小不同的列表
a=[1,2,3,4,5,6]
b=[3,6,7,8]
或
a=[3,4,5,6,7]
b=[1,2,3,4,16,7,7,8,0]
现在我要压缩这两个大小不相等的列表 C =拉链(A,B)
这样我才能做到
for i,j in c:
print i , j
请建议。
答案 0 :(得分:2)
您可以使用itertools中的izip_longest:
from itertools import izip_longest
a=[1,2,3,4,5,6]
b=[3,6,7,8]
new_val = list(izip_longest(a, b))
这将给出:
[(1, 3), (2, 6), (3, 7), (4, 8), (5, None), (6, None)]
izip_longest(或Python3中的zip_longest)将替换None,因为两个或更多列表之间的长度不匹配会被压缩。