利用python自带的zip函数可同时对两个列表进行遍历,代码如下:

>>> list1 = ['a', 'b', 'c', 'd']

>>> list2 = ['apple', 'boy', 'cat', 'dog']

>>> for x, y in zip(list1, list2):

print(x, 'is', y)

# 输出

a is apple

b is boy

c is cat

d is dog

原理说明

Python3中的zip函数可以把两个或者两个以上的迭代器封装成生成器,这种zip生成器会从每个迭代器中获取该迭代器的下一个值,然后把这些值组装成元组(tuple)。这样,zip函数就实现了平行地遍历多个迭代器。

注意

如果输入的迭代器长度不同,那么,只要有一个迭代器遍历完,zip就不再产生元组了,zip会提前终止,这可能导致意外的结果,不可不察。如果不能确定zip所封装的列表是否等长,可以改用 itertools 内置模块中的zip_longest 函数,这个函数不在乎它们的长度是否相等。

在Python2中,zip不是生成器,它平行地遍历这些迭代器,组装元组,并把这些元组所构成的列表一次性完整地返回,这可能会占用大量内存并导致程序崩溃,如果在Python2中要遍历数据量大的迭代器,推荐使用 itertools 内置模块中的 izip 函数。

python 遍历两个列表_python 如何在一个for循环中遍历两个列表相关推荐

  1. python 如何在一个for循环中遍历两个列表

    是我在看<笨方法学python>过程中发现有一行代码看不懂--" for sentence in snippet, phrase:",所以研究了半天,感觉挺有收获的.所 ...

  2. pythonfor循环遍历字典的属性_python-嵌套和for循环中的字典和列表中的项...

    我有一个命令: import collections collections.OrderedDict([('key', {'keyword': {'blue', 'yellow'}}), ('key1 ...

  3. python for in循环列表_python 之 使用 for-in 循环遍历范围,元组,列表,字典

    语法格式:for 变量 in 范围 | 元素 | 集合等: for循环语法结构列如序列或迭代器作为其参数每次迭代其中一个元素. 与while循环一样,支持break,continue,else语句. ...

  4. python for 循环中使用 remove 删除列表中的元素

    python for 循环中使用 remove 删除列表中的元素 错误的代码 # !/usr/bin/python # encoding: utf-8 # -*- coding: utf8 -*- o ...

  5. python多分支语句实例_Python分支语句与循环语句应用实例分析

    Python分支语句与循环语句应用实例分析 来源:中文源码网    浏览: 次    日期:2019年11月5日 [下载文档:  Python分支语句与循环语句应用实例分析.txt ] (友情提示:右 ...

  6. python输出奇数数字序列_python在一串数字中选出奇数-女性时尚流行美容健康娱乐mv-ida网...

    女性时尚流行美容健康娱乐mv-ida网 mvida时尚娱乐网 首页 美容 护肤 化妆技巧 发型 服饰 健康 情感 美体 美食 娱乐 明星八卦 首页  > 高级搜索 js 验证 数字 (验证字符 ...

  7. pythonwhile列表_Python编程:while循环处理列表和字典

    列表之间移动元素 先将列表中的元素逐个删除,删除的元素保存到新的变量中,再将变量中的元素添加到新列表中,列表为空时停止循环. 例如:假设有一个列表,其中包含新注册但还未验证的网站用户:验证这些用户后, ...

  8. java 两个url对比_一个URL模式中的两个slu ..

    如何将两个slu in放在一个url模式中?我有一个与模型类别有多对一关系的模型链接 . url( regex=r'^(?P[\w-]+)/(?P\d+)(?:/(?P[\w\d-]+))?/$', ...

  9. web无序列表去掉点_在HTML中怎样去除无序列表前的小圆点

    在HTML中怎样去除无序列表前的小圆点 234游戏网友 提出于 2019-07-18 23:47:52 请注意:本文为编辑制作专题提供的资讯,页面显示的时间仅为生成静态页面时间而非具体内容事件发生的时 ...

最新文章

  1. 剑指offer:面试题30. 包含min函数的栈
  2. pandas高级处理-合并
  3. Excel,此文件中的某些文本格式可能已经更改,因为它已经超出最多允许的字体数。...
  4. GetDlgItem的用法
  5. 4种实例 advice aop_Java动态代理在Spring的应用:AOP编程与动态代理知识
  6. matlab用socket线程发送数据,使用Python Twisted和Autobahn从Matlab通过WebSocket发送JSON数据...
  7. App 签名过期或泄露怎么办?别担心,Google 已经给出解决方案!
  8. 数据赋能变现时代,应用有哪些有效的变现方式?
  9. C语言基础2-C语言条件结构
  10. Java中的class类和对象总结(思维导图)
  11. p2p-如何拯救k8s镜像分发的阿喀琉斯之踵
  12. mysqldump: Got error: 1168 differently defined non-MyISAM LOCK TABLES
  13. 淘宝订单信息获取接口
  14. 贪吃蛇之一维数组实现
  15. 横河DLM2000示波器连接电脑
  16. 电商后台设计:权限设计
  17. 文本识别OCR浅析:特征篇
  18. 【CV/Matlab系列】基于matlab GUI的视频监控界面
  19. 思维导图02----Java面向对象
  20. 测试扛把子必须了解的20个免费webservice接口

热门文章

  1. 创建java类并实例化类对象
  2. self、 superclass 、 super的区别
  3. Spring笔记2——Spring中Bean的装配
  4. 一台机器上同时部署多个tomcat服务
  5. pyqt5开发环境配置
  6. 使用Mondrian Virtual OLAP Cube 实现星座模型并在saiku展现分析
  7. 【IT笔试面试题整理】二叉搜索树转换为双向链表
  8. 给mac配置adb 路径
  9. 《Entity Framework 6 Recipes》中文翻译系列 (45) ------ 第八章 POCO之获取原始对象与手工同步对象图和变化跟踪器...
  10. 最简单的flex bison例子