python使用 zip 同时迭代多个序列示例

yipeiwu_com5年前Python基础

本文实例讲述了python使用 zip 同时迭代多个序列。分享给大家供大家参考,具体如下:

zip 可以平行地遍历多个迭代器

python 3中zip相当于生成器,遍历过程中产生元祖,python2会把元祖生成好,一次性返回整份列表

zip(x,y,z)会生成一个可返回元组 (x,y,z) 的迭代器

>>> x = [1, 2, 3, 4, 5]
>>> y = ['a', 'b', 'c', 'd', 'e']
>>> z = ['a1', 'b2', 'c3', 'd4', 'e5']
>>> for i in zip(x,y,z):
...  print(i)
... 
(1, 'a', 'a1')
(2, 'b', 'b2')
(3, 'c', 'c3')
(4, 'd', 'd4')
(5, 'e', 'e5')

遍历长度不一样(只要耗尽一个就会结束,若想遍历不等长请使用itertools的zip_longest)

>>> x = [1, 2, 3, 4, 5, 6]
>>> y = ['a', 'b', 'c', 'd', 'e']
>>> for i in zip(x,y):
...  print(i)
... 
(1, 'a')
(2, 'b')
(3, 'c')
(4, 'd')
(5, 'e')

>>> from itertools import zip_longest
>>> x = [1, 2, 3, 4, 5, 6]
>>> y = ['a', 'b', 'c', 'd', 'e']
>>> for i in zip_longest(x,y):
...  print(i)
... 
(1, 'a')
(2, 'b')
(3, 'c')
(4, 'd')
(5, 'e')
(6, None)

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

解决Django加载静态资源失败的问题

解决Django加载静态资源失败的问题

Django项目中为什么会加载静态时会失败呢? 原因:django部署方式比较特别,采用静态文件路径:STATICFILES_DIRS的部署方式,之前你写的相对路径,绝对路径因为缺少静态...

python操作MySQL 模拟简单银行转账操作

python操作MySQL 模拟简单银行转账操作

一、基础知识 1、MySQL-python的安装 下载,然后 pip install 安装包 2、python编写通用数据库程序的API规范 (1)、数据库连接对象 connection...

在Python上基于Markov链生成伪随机文本的教程

 首先看一下来自Wolfram的定义     马尔可夫链是随机变量{X_t}的集合(t贯穿0,1,...),给定当前的状态,未来与过去条件独立。...

将python包发布到PyPI和制作whl文件方式

wheel文件 Wheel和Egg都是python的打包格式,目的是支持不需要编译或制作的安装过程,实际上也是一种压缩文件,将.whl的后缀改为.zip即可可看到压缩包里面的内容。按照官...

Python入门教程之运算符与控制流

Python入门教程之运算符与控制流

Python 中的运算符 什么是运算符?举个简单的例子 4 +5 = 9 。 例子中,4 和 5 被称为操作数,"+" 称为运算符。 1 . 求幂运算符 在 Java 中如果我们想对一...