Python zip() 函数

2024年9月26日 | 阅读 3 分钟

Python zip() 函数返回一个 zip 对象,该对象将多个容器的相同索引映射起来。它接受零个或多个可迭代对象,将其制成一个迭代器,该迭代器根据传入的可迭代对象聚合元素,并返回一个元组的迭代器。

Python 的 zip() 函数是一个内置函数,用于将两个或多个可迭代对象合并成一个可迭代对象。此函数将任何数量的可迭代对象(列表、元组、集合等)作为参数,并返回一个迭代器,该迭代器将每个可迭代对象中的元素聚合为元组。每个元组包含来自每个输入可迭代对象的第 i 个元素。

使用 zip() 函数的语法是

参数

iterator1, iterator2, iterator3: 这些是连接在一起的迭代器对象。

返回

它返回来自两个或多个迭代器的迭代器。

Python zip() 函数示例 1

下面的示例展示了 zip() 的工作原理。

输出

[]
{(5, 'five'), (4, 'four'), (6, 'six')}

解释: 在上面的示例中,我们初始化了列表,即 numList(包含整数值)和 strList(包含字符串值),并通过使用 zip() 进行映射。

在第一种情况下,它将迭代器转换为列表并打印 resultList,该列表不包含任何值。

然后,将两个可迭代对象 numList、strList 传递给 zip(),并将迭代器转换为集合并返回其值。

Python zip() 函数示例 2

下面的示例使用 zip() 来解压值。

输出

[('x', 6), ('y', 2), ('z', 8)]
c = ('x', 'y', 'z')
v = (6, 2, 8)

该函数将任何数量的可迭代对象作为参数,用逗号分隔,并返回一个迭代器,该迭代器生成包含来自每个可迭代对象的元素的元组。

示例 3

输出

Alice 25
Bob 30
Charlie 35

我们还可以将 zip() 函数与两个以上的可迭代对象一起使用。例如,假设我们有三个列表

示例 4

输出

Alice 25 160
Bob 30 175
Charlie 35 180

总之,Python 中的 zip() 函数是一个强大的工具,它允许我们将两个或多个可迭代对象合并成一个可迭代对象。对于处理分布在多个列表或其他数据结构中的数据很有用。


下一个主题Python 内置函数