Python的zip()函数是什么

图片[1]-Python的zip()函数是什么-uusu优素-乐高,模型,3d打印,编程

zip() 函数可以把两个列表“压缩”成一个 zip 对象(可迭代对象),这样就可以使用一个循环并行遍历两个列表。为了测试 zip() 函数的功能,我们可以先在交互式解释器中“试验”一下该函数的功能。

>>>a=['a','b','c']
>>>b=[1,2,3]
>>>[xforxinzip(a,b)]
[('a',1),('b',2),('c',3)]

从上面的测试结果来看,zip() 函数压缩得到的可迭代对象所包含的元素是由原列表元素组成的元组。

Pthon2.x的zip()函数直接返回列表,而不是返回zip对象。Python2.x的zip()函数返回的列表所包含的元素和
Python3.x
的zip()返回的zip对象所包含的元素相同。

例如

>>>c=[0.1,0.2]
>>>[xforxinzip(a,c)]
[('a',0.1),('b',0.2)]

从上面代码可以看出,如果 zip() 函数压缩的两个列表长度不相等,那么 zip() 函数将以长度更短的列表为准。zip() 函数不仅可以压缩两个列表,也可以压缩多个列表。比如下面试验同时压缩 3 个列表:

>>>[xforxinzip(a,b,c)]
[('a',1,0.1),('b',2,0.2)]

从上面代码可以看出,如果使用 zip() 函数压缩 N 个列表,那么 zip() 函数返回的可迭代对象的元素就是长度为 N 的元组。

下面代码示范了使用 zip() 函数来实现并行遍历的效果:

books=['疯狂Kotlin讲义','疯狂Swift讲义','疯狂Python讲义']
prices=[79,69,89]
#使用zip()函数压缩两个列表,从而实现并行遍历
forbook,priceinzip(books,prices):
print("%s的价格是:%5.2f"%(book,price))
原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容