python中zip()函数遍历多个列表方法


Posted in Python onFebruary 18, 2021

在对列表的元素进行找寻时,会频繁的说到遍历的理念。对于复杂的遍历要求,如多个列表中查找就显然不适合用for循环。本篇所要带来的是zip() 函数的方法,能够对多个迭代器进行遍历。下面我们就python中zip的说明、语法、使用注意点进行讲解,然后带来遍历多个列表的实例。

1、说明

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。(注:在python3中返回的是zip对象)

2、语法

zip(iterable, ...)

# 其中 iterable,... 表示多个列表、元组、字典、集合、字符串,甚至还可以为 range() 区间。

3、注意

(1)zip 可以平行地遍历多个迭代器,如果可迭代对象的长度不相同将按短的序列为准

(2)python3中zip相当于生成器,遍历过程中产生元组,python2会把元组生成好,一次性返回整份列表

4、实例

使用zip()函数一次处理两个或多个列表中的元素:

alist = ['a1', 'a2', 'a3']
blist = ['1', '2', '3']
for a, b in zip(alist, blist):
  print a, b
# a1 1
# a2 2
# a3 3

python zip()函数实例扩展:

两个或者多个list

a=[1,2,3]
b=[4,5,6]
c=[7,8,9,10] 

#两个list去zip()
zip(a,b)

#三个list去zip(),返回的对象的长度和最小的迭代器一致
zip(a,b,c)

#用list()查看zip后的数据
list(zip(a,b)) #[(1, 4), (2, 5), (3, 6)]
list(zip(a,b,c)) #[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

#使用zip(*zip())解压
a1,b1=zip(*zip(a,b))

#两个list迭代输出
for i,j in zip(a,b):
 print(i,j)

如有两个list,一个是一层,一个是嵌套,要组成一个dict

#将zip对象转换成字典看看
a=[1,2,3]
d=[['a','b','c'],['aa','bb','cc'],['aaa','bbb','ccc']]

dict(zip(a,d)) #{1: ['a', 'b', 'c'], 2: ['aa', 'bb', 'cc'], 3: ['aaa', 'bbb', 'ccc']}
#如果一个是key值,一个内层list就是一行value
[dict(zip(a,value)) for value in d] #[{1: 'a', 2: 'b', 3: 'c'},
 {1: 'aa', 2: 'bb', 3: 'cc'},
 {1: 'aaa', 2: 'bbb', 3: 'ccc'}]

#或者是 
l=[]
for value in d:
 dict={}
 for i in range(len(value)):
  dict[a[i]]=value[i]
 l.append(dict)

到此这篇关于python中zip()函数遍历多个列表方法的文章就介绍到这了,更多相关zip()函数如何在python中遍历多个列表内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python使用PyV8执行javascript代码示例分享
Dec 04 Python
跟老齐学Python之类的细节
Oct 13 Python
python daemon守护进程实现
Aug 27 Python
python中logging包的使用总结
Feb 28 Python
Python基于TCP实现会聊天的小机器人功能示例
Apr 09 Python
Windows下PyCharm安装图文教程
Aug 27 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
Jul 22 Python
详解Django3中直接添加Websockets方式
Feb 12 Python
解决redis与Python交互取出来的是bytes类型的问题
Jul 16 Python
Python urllib request模块发送请求实现过程解析
Dec 10 Python
python 中的jieba分词库
Nov 23 Python
python中出现invalid syntax报错的几种原因分析
Feb 12 Python
python模块内置属性概念及实例
Feb 18 #Python
Python中的流程控制详解
Feb 18 #Python
python爬取豆瓣电影排行榜(requests)的示例代码
Feb 18 #Python
python 爬取腾讯视频评论的实现步骤
Feb 18 #Python
Python之qq自动发消息的示例代码
Feb 18 #Python
Python对excel的基本操作方法
Feb 18 #Python
No module named ‘win32gui‘ 的解决方法(踩坑之旅)
Feb 18 #Python
You might like
将一维或多维的数组连接成一个字符串的php代码
2010/08/08 PHP
PHP异步调用socket实现代码
2012/01/12 PHP
PHP error_log()将错误信息写入一个文件(定义和用法)
2013/10/25 PHP
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
2014/11/04 PHP
PHP url的pathinfo模式加载不同控制器的简单实现
2016/08/12 PHP
使用swoole 定时器变更超时未支付订单状态的解决方案
2019/07/24 PHP
js open() 与showModalDialog()方法使用介绍
2013/09/10 Javascript
JS取文本框中最小值的简单实例
2013/11/29 Javascript
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
JavaScript模版引擎的基本实现方法浅析
2016/02/15 Javascript
常用js,css文件统一加载方法(推荐) 并在加载之后调用回调函数
2016/09/23 Javascript
jQuery easyui刷新当前tabs的方法
2016/09/23 Javascript
JavaScript中in和hasOwnProperty区别详解
2017/08/04 Javascript
js构造函数constructor和原型prototype原理与用法实例分析
2020/03/02 Javascript
详解vue-router的Import异步加载模块问题的解决方案
2020/05/13 Javascript
python抖音表白程序源代码
2019/04/07 Python
信号生成及DFT的python实现方式
2020/02/25 Python
python+selenium+chrome批量文件下载并自动创建文件夹实例
2020/04/27 Python
用pandas划分数据集实现训练集和测试集
2020/07/20 Python
PyCharm 解决找不到新打开项目的窗口问题
2021/01/15 Python
python中time.ctime()实例用法
2021/02/03 Python
SmartBuyGlasses意大利:购买太阳镜、眼镜和隐形眼镜
2018/11/20 全球购物
SEPHORA丝芙兰德国官方购物网站:化妆品、护肤品和香水
2020/01/21 全球购物
JENNIFER BEHR官网:各种耳环和发饰
2020/06/07 全球购物
小饰品店的创业计划书范文
2013/12/28 职场文书
运动会通讯稿100字
2014/01/31 职场文书
银行委托书范本
2014/04/04 职场文书
分公司任命书
2014/06/06 职场文书
物流专业求职信
2014/06/30 职场文书
投标授权委托书范文
2014/08/02 职场文书
交通事故和解协议书
2015/01/27 职场文书
质量负责人岗位职责
2015/02/15 职场文书
工作时间调整通知
2015/04/24 职场文书
苦儿流浪记读书笔记
2015/07/01 职场文书
《赵州桥》教学反思
2016/02/17 职场文书
一文彻底理解js原生语法prototype,__proto__和constructor
2021/10/24 Javascript