跳至主要内容

zip()

Python 中的 zip() 函数 返回一个迭代器,该迭代器将来自两个或更多个可迭代对象(例如 列表元组 等)的元素聚合到元组中。这些元组包含来自输入可迭代对象中对应位置的元素。当最短的输入可迭代对象用尽时,迭代器停止。

参数值

参数 描述
iter1, iter2, ...

要一起拉链的可迭代对象。可以是任何可迭代对象,例如 listtupleset 等。

返回值

Python 中的 zip() 函数返回一个 元组 的迭代器。

如何在 Python 中使用 zip()

示例 1

zip() 函数采用可迭代对象(可以是多个可迭代对象),并返回一个 元组 的迭代器,其中第 i 个元组包含来自每个输入可迭代对象的第 i 个元素。

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
zipped = zip(list1, list2)
result = list(zipped)
示例 2

如果输入可迭代对象长度不同,则 zip() 将在最短的可迭代对象用尽时停止。

list1 = [1, 2, 3]
list2 = ['a', 'b']
zipped = zip(list1, list2)
result = list(zipped)
示例 3

你还可以使用解包运算符 (*) 将拉链元素解压缩回单独的 列表

zipped = [(1, 'a'), (2, 'b'), (3, 'c')]
unzipped = list(zip(*zipped))
list1, list2 = unzipped