Python 内置函数

Python zip() 函数用于把多个序列按位置打包成元组,并行遍历多个列表。

语法

zip(*iterables)

参数

*iterables:一个或多个可迭代对象,按位置并行打包。

返回值

返回 zip 对象(迭代器),产出元组。长度按最短的截断。要列表用 list()

示例

names = ["Tom", "Ann", "Bob"]
ages = [20, 18, 25]

pairs = list(zip(names, ages))
print(pairs)   # [('Tom', 20), ('Ann', 18), ('Bob', 25)]

for name, age in zip(names, ages):
    print(name, age)

print("---")
# 长度不一致时按最短的截断
a = [1, 2, 3]
b = [10, 20]
print(list(zip(a, b)))   # [(1, 10), (2, 20)]

输出:

[('Tom', 20), ('Ann', 18), ('Bob', 25)]
Tom 20
Ann 18
Bob 25
---
[(1, 10), (2, 20)]

注意事项

zip 返回迭代器,要列表用 list()。常用场景:并行遍历、dict(zip(键列表, 值列表)) 建字典。