一、说明
zip
是 Python 中一个非常实用的内置函数,用于将可迭代的对象(如列表、元组、字典等)作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象(注意,返回的其实是一个迭代器)。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。
二、zip
函数的基本用法
示例 1:两个列表
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
zipped = zip(list1, list2)
# 输出:这是一个迭代器,所以直接打印看到的是它的内存地址
# 要查看其内容,可以将其转换为列表
print(list(zipped)) # 输出:[(1, 'a'), (2, 'b'), (3, 'c')]
示例 2:三个列表
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
list3 = [True, False, True]
zipped = zip(list1, list2, list3)
print(list(zipped)) # 输出:[(1, 'a', True), (2, 'b', False), (3, 'c', True)]
示例 3:长度不等的列表
list1 = [1, 2, 3, 4]
list2 = ['a', 'b', 'c']
zipped = zip(list1, list2)
print(list(zipped)) # 输出:[(1, 'a'), (2, 'b'), (3, 'c')]
# 注意,只有最短的列表的长度个元素被打包
示例 4:解压缩(使用 *
)
zipped = [