python中zip是将一个或多个迭代器打包成一个列表,其中列表中每个元素就是被打包的迭代器对应位置的元素所组成的列表,说起来有点抽象,直接上代码演示。
打包后的zipped好像是一个生成器,可以使用遍历训练访问其中的元素
a = [1,2,3]
b = ['a', 'b', 'c']
zipped = zip(a, b)
# zipped的内容应该是 --->>> [(1, 'a'), (2, 'b'), (3, 'c')]
# 两种遍历方法,但注意,每遍历循环结束后,就不能再次遍历,像极了生成器,嗯!应该是这个意思
''' 遍历方法一 '''
for i in zipped:
print(i)
''' 遍历方法二 '''
for i, j in zipped:
print(i, j)
遍历方法一访问的是每个元祖,
方法二访问的是每个元祖中的每个元素
另外,若打包的迭代器中元素个数不一致,那么按少的打包
a = [1, 2, 3]
b = ['a', 'b', 'c', 'd']
zipped = zip(a, b)
# 此时的zipped就是 --->>> [(1. 'a'), (2, 'b'), (3, 'c')]