zip([seql, …])接受一系列可迭代对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。
一维的话, 比较好容易理解。
a = [1,2,3]
b = [4,5,6]
c = zip(a, b)
for e in c:
print(e)
(1, 4)
(2, 5)
(3, 6)
二维的话,比较难以理解,下面是例子
x = [[1, 2, 3],[41, 42, 43]]
y = [4, 5, 6]
z = [7, 8, 9]
z1 = [[11, 12, 13],[51, 52, 53]]
z2 = [21, 22]
z3 = [31, 32, 33]
for bb,cc in zip([x, y, z],[z1,z2,z3]):
print(bb)
print(cc)
输出结果:
[[1, 2, 3], [41, 42, 43]]
[[11, 12, 13], [51, 52, 53]]
[4, 5, 6]
[21, 22]
[7, 8, 9]
[31, 32, 33]