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之传说中的函数编写条规
Oct 11 Python
解析Python中的异常处理
Apr 28 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
Aug 05 Python
python的Tqdm模块的使用
Jan 10 Python
python实现狄克斯特拉算法
Jan 17 Python
ActiveMQ:使用Python访问ActiveMQ的方法
Jan 30 Python
用python实现刷点击率的示例代码
Feb 21 Python
对Python获取屏幕截图的4种方法详解
Aug 27 Python
python图片验证码识别最新模块muggle_ocr的示例代码
Jul 03 Python
如何用用Python将地址标记在地图上
Feb 07 Python
利用python做表格数据处理
Apr 13 Python
python引入其他文件夹下的py文件具体方法
May 23 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
回答PHPCHINA上的几个问题:URL映射
2007/02/14 PHP
Yii框架form表单用法实例
2014/12/04 PHP
PHP+MySQL插入操作实例
2015/01/21 PHP
PHP中include()与require()的区别说明
2017/02/14 PHP
PHP创建对象的六种方式实例总结
2019/06/27 PHP
张孝祥JavaScript学习阶段性总结(2)--(X)HTML学习
2007/02/03 Javascript
IE浏览器兼容Firefox的JS脚本的代码
2008/10/23 Javascript
javascript qq右下角滑出窗口 sheyMsg
2010/03/21 Javascript
详解JavaScript函数
2015/12/01 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
使用jQuery Mobile框架开发移动端Web App的入门教程
2016/05/17 Javascript
Highcharts 多个Y轴动态刷新数据的实现代码
2016/05/28 Javascript
javascript中获取元素标签中间的内容的实现方法
2016/10/08 Javascript
ubuntu编译nodejs所需的软件并安装
2017/09/12 NodeJs
AngularJs 最新验证手机号码的实例,成功测试通过
2017/11/26 Javascript
Vue-Access-Control 前端用户权限控制解决方案
2017/12/01 Javascript
vue-router3.0版本中 router.push 不能刷新页面的问题
2018/05/10 Javascript
Vue实现左右菜单联动实现代码
2018/08/12 Javascript
JavaScript实现随机点名程序
2020/03/25 Javascript
部署vue+Springboot前后端分离项目的步骤实现
2020/05/31 Javascript
在VUE style中使用data中的变量的方法
2020/06/19 Javascript
JavaScript实现移动端拖动元素
2020/11/24 Javascript
通过实例解析js可枚举属性与不可枚举属性
2020/12/02 Javascript
教大家使用Python SqlAlchemy
2016/02/12 Python
高质量Python代码编写的5个优化技巧
2017/11/16 Python
解决已经安装requests,却依然提示No module named requests问题
2018/05/18 Python
Django 登陆验证码和中间件的实现
2018/08/17 Python
Django自带的加密算法及加密模块详解
2019/12/03 Python
pytorch:实现简单的GAN示例(MNIST数据集)
2020/01/10 Python
Python偏函数实现原理及应用
2020/11/20 Python
html5使用canvas绘制文字特效
2014/12/15 HTML / CSS
函授毕业自我鉴定
2013/12/19 职场文书
高中校园广播稿
2014/01/11 职场文书
教师党员一句话承诺
2014/03/28 职场文书
不忘国耻振兴中华演讲稿
2014/05/14 职场文书
python 实现定时任务的四种方式
2021/04/01 Python