Python zip 用法详解及示例
Python zip 语法
zip()
函数是 Python 内置函数之一,用于将多个可迭代对象压缩成一个元组列表,并返回一个迭代器。它将每个可迭代对象中的元素逐个配对在一起,形成新的元组。如果可迭代对象的长度不一致,则以最短长度的可迭代对象为准。
zip()
函数的语法如下:
zip(*iterables)
其中,iterables
是一个或多个可迭代对象作为输入参数,可以是多个容器类型(例如列表、元组、字典、字符串等)。
返回值是一个迭代器对象,可以通过 list()
函数来转换为列表,或者可以直接进行遍历获取每个元素。
示例
示例1:压缩两个列表
fruits = ['apple', 'banana', 'cherry']
prices = [1.5, 2.3, 0.8]
result = zip(fruits, prices)
print(list(result))
输出结果:
[('apple', 1.5), ('banana', 2.3), ('cherry', 0.8)]
示例2:压缩三个列表
fruits = ['apple', 'banana', 'cherry']
prices = [1.5, 2.3, 0.8]
colors = ['red', 'yellow', 'purple']
result = zip(fruits, prices, colors)
print(list(result))
输出结果:
[('apple', 1.5, 'red'), ('banana', 2.3, 'yellow'), ('cherry', 0.8, 'purple')]
示例3:解压缩列表
fruits = ['apple', 'banana', 'cherry']
prices = [1.5, 2.3, 0.8]
result = zip(fruits, prices)
unzipped_fruits, unzipped_prices = zip(*result)
print(list(unzipped_fruits))
print(list(unzipped_prices))
输出结果:
['apple', 'banana', 'cherry']
[1.5, 2.3, 0.8]
以上示例展示了使用 zip()
函数来压缩列表以及如何解压缩列表的用法。你可以根据实际需求和情况,灵活运用这个函数来处理可迭代对象。