Python中的zip()

Posted 笛在月明楼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中的zip()相关的知识,希望对你有一定的参考价值。

语法如下:

zip(iter1 [,iter2 [...]]) —> zip object

zip()函数将多个可迭代对象中对应的元素打包成一个个元组,然后返回一个可迭代对象。如果元素的个数不一致,则返回的长度与最短的对象相同。

简单来说,zip()是将多个对象按照一一对应的方式合并到一起,然后返回一个称为zip object的特殊数据类型

简单的三个小例子

例如:

uppercase = [\'A\', \'B\', \'C\']
lowercase = [\'a\', \'b\', \'c\']

for x, y in zip(uppercase, lowercase):
    print(x, y)

输出结果如下:

对象的个数可以是多个

例如:

uppercase = [\'A\', \'B\', \'C\']
lowercase = [\'a\', \'b\', \'c\']
numbers = [1, 2, 3]

for x, y, z in zip(uppercase, lowercase, numbers):
    print(x, y, z)

前面提到,如果元素的个数不一致,则返回列表的长度与最短的对象相同。

例如:

uppercase = [\'A\', \'B\', \'C\', \'D\', \'E\']
lowercase = [\'a\', \'b\', \'c\', \'d\']
numbers = [1, 2, 3]

for x, y, z in zip(uppercase, lowercase, numbers):
    print(x, y, z)

将zip()对象转换为列表

list()函数将zip对象转换为一个元组列表。

例如:

a = ["red", "green", "blue"]
b = ["leopard", "cheetah", "jaguar"]

print(list(zip(a, b)))

我们可以使用索引浏览各个元组

例如:

a = ["red", "green", "blue"]
b = ["leopard", "cheetah", "jaguar"]

new_list=list(zip(a, b))
print(new_list[0])
print(new_list[1])
print(new_list[2])

将zip()对象转换成字典

dict()函数可用于将zip对象转换为字典。需要注意的是,只能使用两个zip()参数-前者产生key,后者产生value

b = ["red", "green", "blue"]
f = ["strawberry", "kiwi", "blueberry"]

print(dict(zip(b, f)))

 

以上是关于Python中的zip()的主要内容,如果未能解决你的问题,请参考以下文章

以下代码中的 zip(*res) 在 python 中是啥意思? [复制]

从 Zip 文件中的文件中读取内容

Python中的zip()与*zip()函数详解

怎么从zip里提取文件 Python

Python:如何从内存中的 zip 文件中读取图像?

使用 python zipfile 提取 zip 子文件夹中的文件