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

yipeiwu_com6年前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程序设计有所帮助。

相关文章

Python实现二叉树的最小深度的两种方法

找到给定二叉树的最小深度 最小深度是从根节点到最近叶子节点的最短路径上的节点数量 注意:叶子节点没有子树 Example: Given binary tree [3,9,20,null...

Django 重写用户模型的实现

Django内建的User模型可能不适合某些类型的项目。例如,在某些网站上使用邮件地址而不是用户名作为身份的标识可能更合理。 1.修改配置文件,覆盖默认的User模型 Django允...

浅谈python和C语言混编的几种方式(推荐)

Python这些年风头一直很盛,占据了很多领域的位置,Web、大数据、人工智能、运维均有它的身影,甚至图形界面做的也很顺,乃至full-stack这个词语刚出来的时候,似乎就是为了描述它...

Python3 sys.argv[ ]用法详解

Python3 sys.argv[ ]用法详解

sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作...

python+selenium开发环境搭建图文教程

python+selenium开发环境搭建图文教程

web 调试工具介绍和开发环境搭建 python与selenium开发环境搭建: 一、下载python软件:https://www.python.org/ 下载完后,进行安装,安装成功...