玩蛇网提供最新Python编程技术信息以及Python资源下载!
您现在的位置: 玩蛇网首页 > Python进阶教程 > 正文内容

Python基础入门必备

Python 并行遍历zip()函数使用方法

Python基础教程(第2版 修订版)
玩蛇网推荐图文教程: python黑客多线程扫描器

今天我们要讲主题是python并行遍历zip()函数使用方法。在讲range()函数使用方法时我们知道了,range()可以在for循环中是以非完备的方式遍历序列,那么zip()并行遍历又是怎么工作的呢?它和python遍历元祖有什么样的不同呢,下面一起来看下。

zip()函数在运算时,会以一个或多个序列做为参数,返回一个元组的列表。同时将这些序列中并排的元素配对。

zip()基本操作方法

例如,有两个列表:

a = [1,2,3]
b = [4,5,6]

使用zip()函数来可以把列表合并,并创建一个元组对的列表。

zip(a,b)
[(1, 4), (2, 5), (3, 6)]

在python 3.0中zip()是可迭代对象,使用时必须将其包含在一个list中,方便一次性显示出所有结果

list(zip(a,b))
[(1, 4), (2, 5), (3, 6)]

zip()参数可以接受任何类型的序列,同时也可以有两个以上的参数;当传入参数的长度不同时,zip能自动以最短序列长度为准进行截取,获得元组。

>>> l1,l2,l3 = (1,2,3),(4,5,6),(7,8,9)
>>> zip(l1,l2,l3)
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]


>>> str1 = 'abc'
>>> str2 = 'def123'
>>> zip(str1,str2)
[('a', 'd'), ('b', 'e'), ('c', 'f')]

搭配for循环,支持并行迭代操作方法

zip()方法用在for循环中,就会支持并行迭代:

l1 = [2,3,4]
l2 = [4,5,6]

for (x,y) in zip(l1,l2):
	print x,y,'--',x*y

2 4 -- 8
3 5 -- 15
4 6 -- 24

其实它的工作原理就是使用了zip()的结果,在for循环里解包zip结果中的元组,用元组赋值运算。就好像(x,y)=(2,6),赋值、序列解包操作。在对文件的操作中我们也会用到遍历,例如Python遍历文件夹目录与文件操作,就是很方便实用的。

相关文章推荐:python 遍历 tuple

玩蛇网文章,转载请注明出处和来源网址:http://www.iplaypython.com/jinjie/zip.html



微信公众号搜索"玩蛇网Python之家"加关注,每日最新的Python资讯、图文视频教程可以让你一手全掌握。强烈推荐关注!

微信扫描下图可直接关注

玩蛇网PythonQQ群,欢迎加入: ① 240764603 玩蛇网Python新手群
修订日期:2016-01-31 20:00 玩蛇网 www.iplaypython.com

我要分享到:    
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)

必知PYTHON模块 Must Know PYTHON Modules