zip在英文中有拉链的意思,我们由此可以形象的理解它的作用:将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。
语法:
zip([iterable, …])
示例:
A = ['a1', 'a2', 'a3', 'a4', 'a5']
B = ['b1', 'b2', 'b3', 'b4', 'b5']
C = []
C.append(A)
C.append(B)
# [(['a1', 'a2', 'a3', 'a4', 'a5'],), (['b1', 'b2', 'b3', 'b4', 'b5'],)]
test = [t for t in zip((A, B))]
print(test)
# [('a1', 'b1'), ('a2', 'b2'), ('a3', 'b3'), ('a4', 'b4'), ('a5', 'b5')]
test1 = [t for t in zip(*(A, B))]
print(test1)
# [('a1', 'b1'), ('a2', 'b2'), ('a3', 'b3'), ('a4', 'b4'), ('a5', 'b5')]
test2 = [t for t in zip(*(C))]
print(test2)