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

 更新时间:2019年07月06日 08:19:17   作者:很长很长的名字  
这篇文章主要介绍了python使用 zip 同时迭代多个序列,结合实例形式分析了Python使用zip遍历迭代长度相等与不等的序列相关操作技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • Numpy的各种下标操作的示例代码

    Numpy的各种下标操作的示例代码

    本文主要介绍了Numpy的各种下标操作的示例代码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • pycharm 中mark directory as exclude的用法详解

    pycharm 中mark directory as exclude的用法详解

    今天小编就为大家分享一篇pycharm 中mark directory as exclude的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 详解Python连接MySQL数据库的多种方式

    详解Python连接MySQL数据库的多种方式

    这篇文章主要介绍了Python连接MySQL数据库方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • python自带的http模块详解

    python自带的http模块详解

    本文主要是给大家详细讲解了Python中自带的http模块的使用方法和实例,非常的细致,有需要的小伙伴可以参考下
    2016-11-11
  • python opencv旋转图像(保持图像不被裁减)

    python opencv旋转图像(保持图像不被裁减)

    这篇文章主要为大家详细介绍了python opencv旋转图像,保持图像不被裁减,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • 使用PyWeChatSpy自动回复微信拍一拍功能的实现代码

    使用PyWeChatSpy自动回复微信拍一拍功能的实现代码

    这篇文章主要介绍了用PyWeChatSpy自动回复微信拍一拍功能,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Python之requests高级用法详解

    Python之requests高级用法详解

    这篇文章主要介绍了Python之requests高级用法详解,http协议是无状态的, 服务器无法区分多个请求是否来自同一个人,因此需要用cookie来进行标识,一般如果需要登录才能访问的网站就需要发送cookie信息,需要的朋友可以参考下
    2023-10-10
  • pydev使用wxpython找不到路径的解决方法

    pydev使用wxpython找不到路径的解决方法

    pydev使用wx库开发的过程中,import时碰到wx可以识别,但是其它很多函数和变量上面全部是红叉,即无法识别
    2013-02-02
  • python开发的小球完全弹性碰撞游戏代码

    python开发的小球完全弹性碰撞游戏代码

    这篇文章主要介绍了通过python开发的一个小球完全弹性碰撞游戏效果,特分享下
    2013-10-10
  • python合并多个excel文件的示例

    python合并多个excel文件的示例

    这篇文章主要介绍了python合并多个excel文件的示例,帮助大家提高办公效率,感兴趣的朋友可以了解下
    2020-09-09

最新评论