Python zip()函数用法实例分析


Posted in Python onMarch 17, 2018

本文实例讲述了Python zip()函数用法。分享给大家供大家参考,具体如下:

这里介绍python中zip()函数的使用:

>>> help(zip)
Help on built-in function zip in module __builtin__:
zip(...)
  zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)]

    Return a list of tuples, where each tuple contains the i-th element
    from each of the argument sequences.  The returned list is truncated
    in length to the length of the shortest argument sequence.

zip([seq1, ...])接受一系列可迭代对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。若传入参数的长度不等,则返回列表的长度和参数中长度最短的对象相同。

1》

>>> x=[1,2,3]
>>> y=[1,2,3]
>>> z=(1,2,3)
>>> zip(x,y,z)
[(1, 1, 1), (2, 2, 2), (3, 3, 3)]

2》

>>> x=(1,2,3,4)
>>> y=[1,2,3]
>>> zip(x,y) #传入参数的长度不等,则返回列表的长度和参数中长度最短的对象相同
[(1, 1), (2, 2), (3, 3)]

3》

>>> x
(1, 2, 3, 4)
>>> zip(x)
[(1,), (2,), (3,), (4,)]

4》

>>> zip()
[]

5》zip()配合*号操作符,可以将已经zip过的列表对象解压

>>> x=[1,2,3]
>>> y=['a','b','c']
>>> z=[4,5,6]
>>> xyz=zip(x,y,z)
>>> xyz
[(1, 'a', 4), (2, 'b', 5), (3, 'c', 6)]
>>> zip(*xyz)
[(1, 2, 3), ('a', 'b', 'c'), (4, 5, 6)]

6》

>>> x=[5,6,7]
>>> [x] #[x]生成一个列表的列表,它只有一个元素x
[[5, 6, 7]]
>>> [x]*3 #[x] * 3生成一个列表的列表,它有3个元素,[x, x, x]
[[5, 6, 7], [5, 6, 7], [5, 6, 7]]
>>> x
[5, 6, 7]
>>> zip(*[x]*3) #zip(* [x] * 3)等价于zip(x, x, x)
[(5, 5, 5), (6, 6, 6), (7, 7, 7)]

7》

>>> name=['song','ping','python']
>>> age=[26,26,27]
>>> zip(name,age)
[('song', 26), ('ping', 26), ('python', 27)]
>>> for n,a in zip(name,age):
...   print n,a
...
song 26
ping 26
python 27

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中获取网页状态码的两个方法
Nov 03 Python
Python中利用sqrt()方法进行平方根计算的教程
May 15 Python
linux下python抓屏实现方法
May 22 Python
python3中int(整型)的使用教程
Mar 23 Python
Python编程生成随机用户名及密码的方法示例
May 05 Python
Ubuntu安装Jupyter Notebook教程
Oct 18 Python
python交互式图形编程实例(一)
Nov 17 Python
python利用requests库进行接口测试的方法详解
Jul 06 Python
python引用(import)某个模块提示没找到对应模块的解决方法
Jan 19 Python
Python根据指定文件生成XML的方法
Jun 29 Python
Python生成器generator原理及用法解析
Jul 20 Python
Python实现自动装机功能案例分析
Oct 22 Python
Python iter()函数用法实例分析
Mar 17 #Python
Python callable()函数用法实例分析
Mar 17 #Python
Python matplotlib绘图可视化知识点整理(小结)
Mar 16 #Python
python中matplotlib的颜色及线条控制的示例
Mar 16 #Python
Python lambda函数基本用法实例分析
Mar 16 #Python
Python切片操作实例分析
Mar 16 #Python
Python+request+unittest实现接口测试框架集成实例
Mar 16 #Python
You might like
PHP_Flame(Version:Progress)的原代码
2006/10/09 PHP
php中用数组的方法设置cookies
2011/04/21 PHP
PHP计划任务、定时执行任务的实现代码
2011/04/23 PHP
PHP中的Memcache详解
2014/04/05 PHP
PHP图片等比例缩放生成缩略图函数分享
2014/06/10 PHP
老生常谈php 正则中的i,m,s,x,e分别表示什么
2017/03/02 PHP
tp5.1 实现setInc字段自动加1
2019/10/18 PHP
[原创]后缀就扩展名为js的文件是什么文件
2007/12/06 Javascript
JavaScript 面向对象编程(1) 基础
2010/05/18 Javascript
jQuery实现移动 和 渐变特效的点击事件
2015/02/26 Javascript
ubuntu下安装nodejs以及升级的办法
2015/05/08 NodeJs
基于Javascript倒计时效果
2016/12/22 Javascript
vue深入解析之render function code详解
2017/07/18 Javascript
Vue中的methods、watch、computed的区别
2018/11/26 Javascript
详解@angular/cli 改变默认启动端口两种方式
2018/11/29 Javascript
vue axios重复点击取消上一次请求封装的方法
2019/06/19 Javascript
Layui数据表格判断编辑输入的值,是否为我需要的类型详解
2019/10/26 Javascript
JS XMLHttpRequest原理与使用方法深入详解
2020/04/30 Javascript
处理JavaScript值为undefined的7个小技巧
2020/07/28 Javascript
[40:03]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
基于hashlib模块--加密(详解)
2017/06/21 Python
python和ruby,我选谁?
2017/09/13 Python
Python 3 实现定义跨模块的全局变量和使用教程
2019/07/07 Python
python命令 -u参数用法解析
2019/10/24 Python
python numpy实现多次循环读取文件 等间隔过滤数据示例
2020/03/14 Python
iPython pylab模式启动方式
2020/04/24 Python
美国指甲油品牌:Deco Miami
2017/01/30 全球购物
美国高档帽子网上商店:Hats.com
2018/08/09 全球购物
宾馆总经理岗位职责
2014/02/14 职场文书
《飞向蓝天的恐龙》教学反思
2014/04/09 职场文书
土地转让协议书范本
2014/04/15 职场文书
小学家长学校培训材料
2014/08/24 职场文书
上课说话检讨书
2015/01/27 职场文书
运动会报道稿大全
2015/07/23 职场文书
Java常用函数式接口总结
2021/06/29 Java/Android
MySQL提升大量数据查询效率的优化神器
2022/07/07 MySQL