一. 定义
zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少内存
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同
二. 语法
zip([iterable, ...])
-
参数:iterable为一个或多个迭代器
-
返回值:返回的是一个对象,可以使用list()转换来输出列表
三. 实例
1. 实例1
>>> a = [1, 2, 3] >>> b = [4, 5, 6] >>> zip(a, b) <zip object at 0x0000000003BB4188> >>> list(zip(a, b)) [(1, 4), (2, 5), (3, 6)] >>> >>> >>> c = [4, 5, 6, 7, 8] >>> list(zip(a, c)) [(1, 4), (2, 5), (3, 6)] >>>
2. 实例2
等长的两个列表合并到一个字典:keys = ["A", "B", "C"], values = ["1", "2", "3"],要求:合并成{"A":1, "B":2, "C":3},请用一行代码实现
思路:先利用zip()函数将两个列表打包成一个元组对象,再利用dict来构造字典,因此代码为
print(dict(zip(keys, values))) 运行结果: {'B': '2', 'A': '1', 'C': '3'}