一文掌握Python中zip()函数

B站影视 2024-11-29 07:43 1

摘要:zip函数接受两个或多个可迭代对象作为参数,并返回一个迭代器,该迭代器聚合每个可迭代对象中的元素。可以把它想象成一个拉链,把不同列表中的元素组合成一个可迭代的元组。当处理相关数据但存储在不同序列中时,此功能非常方便。

zip函数接受两个或多个可迭代对象作为参数,并返回一个迭代器,该迭代器聚合每个可迭代对象中的元素。可以把它想象成一个拉链,把不同列表中的元素组合成一个可迭代的元组。当处理相关数据但存储在不同序列中时,此功能非常方便。

zip 的基本语法如下:

考虑这样一个场景:有两个列表:一个包含姓名,另一个包含年龄。希望打印每个姓名及其相应的年龄。

以下是如何使用 zip 实现这一点:

# Lists of names and agesnames = ['Alice', 'Bob', 'Charlie']ages = [24, 30, 35]# Using zip to iterate over both lists in parallelfor name, age in zip(names, ages): print(f"{name} is {age} years old.")

输出量:

Alice is 24 years old.Bob is 30 years old.Charlie is 35 years old.

这个代码片段演示了 zip 将 names 列表中的每个元素与 ages 列表中的相应元素配对的能力,从而允许以一种干净简洁的方式处理相关数据。

处理不同类的可迭代项

默认情况下, zip 在最短可迭代对象耗尽时停止。但是,如果需要继续迭代直到最长的可迭代对象耗尽,可以使用 itertools.zip_longest ,使用指定的填充值填充缺失值。

解压缩值

也可以使用 zip 和 * 操作符来将一个元组列表解压缩回单独的列表:

paired_list = list(zip(names, ages))unzipped_names, unzipped_ages = zip(*paired_list)

来源:自由坦荡的湖泊AI一点号

相关推荐