Python中的zip函数使用示例
作者:junjie 时间:2021-05-15 01:10:53
zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表。具体意思不好用文字来表述,直接看示例:
1.示例1:
x = [1, 2, 3]
y = [4, 5, 6]
z = [7, 8, 9]
xyz = zip(x, y, z)
print xyz
运行的结果是:
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
从这个结果可以看出zip函数的基本运作方式。
2.示例2:
x = [1, 2, 3]
y = [4, 5, 6, 7]
xy = zip(x, y)
print xy
运行的结果是:
[(1, 4), (2, 5), (3, 6)]
从这个结果可以看出zip函数的长度处理方式。
3.示例3:
x = [1, 2, 3]
x = zip(x)
print x
运行的结果是:
[(1,), (2,), (3,)]
从这个结果可以看出zip函数在只有一个参数时运作的方式。
4.示例4:
x = zip()
print x
运行的结果是:
[]
从这个结果可以看出zip函数在没有参数时运作的方式。
5.示例5:
x = [1, 2, 3]
y = [4, 5, 6]
z = [7, 8, 9]
xyz = zip(x, y, z)
u = zip(*xyz)
print u
运行的结果是:
[(1, 2, 3), (4, 5, 6), (7, 8, 9)]
一般认为这是一个unzip的过程,它的运行机制是这样的:
在运行zip(*xyz)之前,xyz的值是:[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
那么,zip(*xyz) 等价于 zip((1, 4, 7), (2, 5, 8), (3, 6, 9))
所以,运行结果是:[(1, 2, 3), (4, 5, 6), (7, 8, 9)]
注:在函数调用中使用*list/tuple的方式表示将list/tuple分开,作为位置参数传递给对应函数(前提是对应函数支持不定个数的位置参数)
6.示例6:
x = [1, 2, 3]
r = zip(* [x] * 3)
print r
运行的结果是:
[(1, 1, 1), (2, 2, 2), (3, 3, 3)]
它的运行机制是这样的:
[x]生成一个列表的列表,它只有一个元素x
[x] * 3生成一个列表的列表,它有3个元素,[x, x, x]
zip(* [x] * 3)的意思就明确了,zip(x, x, x)
标签:Python,zip
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
php返回相对时间(如:20分钟前,3天前)的方法
2023-10-26 11:20:38
OpenCV+Python识别车牌和字符分割的实现
2022-10-09 11:15:23
![](https://img.aspxhome.com/file/2023/1/101151_0s.png)
CSS雪碧:要还是不要?
2009-11-16 13:01:00
python flask中静态文件的管理方法
2022-12-11 01:32:40
PHP后台备份MySQL数据库的源码实例
2023-09-04 14:55:11
Python+OpenCV实现分水岭分割算法的示例代码
2021-01-11 05:01:38
![](https://img.aspxhome.com/file/2023/7/100827_0s.jpg)
分类、属性、关键词与Tag
2009-08-27 12:57:00
python中使用psutil查看内存占用的情况
2022-11-11 11:26:22
彻底删除thinkphp3.1案例blog标签的方法
2023-11-21 12:01:01
asp连接MYSQL数据库的连接字符串(参数OPTION)
2009-03-09 18:24:00
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
2022-07-31 02:40:33
python 返回一个列表中第二大的数方法
2022-06-01 00:17:47
用什么视角做产品
2009-08-18 12:17:00
python实现发送QQ邮件(可加附件)
2023-01-21 18:37:00
![](https://img.aspxhome.com/file/2023/8/93778_0s.png)
人脸识别实战之Opencv+SVM实现人脸识别
2021-01-06 09:32:13
![](https://img.aspxhome.com/file/2023/5/72775_0s.png)
mysql使用LOAD语句批量录入数据
2010-03-18 16:19:00
python sleep和wait对比总结
2023-04-30 18:26:04
Python嵌套函数,作用域与偏函数用法实例分析
2022-12-03 08:46:15
利用Python实现简单的相似图片搜索的教程
2023-10-24 18:45:36
![](https://img.aspxhome.com/file/2023/6/79466_0s.jpg)
python 通过 socket 发送文件的实例代码
2022-10-07 17:32:48
![](https://img.aspxhome.com/file/2023/3/76073_0s.png)