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 urllib模块urlopen()与urlretrieve()详解
Nov 01 Python
python判断、获取一张图片主色调的2个实例
Apr 10 Python
python处理xml文件的方法小结
May 02 Python
对Python中DataFrame按照行遍历的方法
Apr 08 Python
利用Pandas和Numpy按时间戳将数据以Groupby方式分组
Jul 22 Python
pygame实现成语填空游戏
Oct 29 Python
Python基于Socket实现简单聊天室
Feb 17 Python
在python中logger setlevel没有生效的解决
Feb 21 Python
Python Django form 组件动态从数据库取choices数据实例
May 19 Python
python用什么编辑器进行项目开发
Jun 17 Python
python使用opencv resize图像不进行插值的操作
Jul 05 Python
python生成随机数、随机字符、随机字符串
Apr 06 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 一元分词算法
2009/11/30 PHP
解析file_get_contents模仿浏览器头(user_agent)获取数据
2013/06/27 PHP
PHP中使用Session配合Javascript实现文件上传进度条功能
2014/10/15 PHP
通过修改配置真正解决php文件上传大小限制问题(nginx+php)
2015/09/23 PHP
微信公众号开发之通过接口删除菜单
2017/02/20 PHP
Laravel框架中自定义模板指令总结
2017/12/17 PHP
php接口实现拖拽排序功能
2018/04/23 PHP
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析
2010/03/12 Javascript
选择器中含有空格在使用示例及注意事项
2013/07/31 Javascript
js中substring和substr的定义和用法
2014/05/05 Javascript
Jquery+Ajax+PHP+MySQL实现分类列表管理(上)
2015/10/28 Javascript
jquery实现具有收缩功能的垂直导航菜单
2016/02/16 Javascript
jquery 实现回车登录详解及实例代码
2016/10/23 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
2017/02/03 Javascript
深入理解vue.js中$watch的oldvalue与newValue
2017/08/07 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
sublime text配置node.js调试(图文教程)
2017/11/23 Javascript
vue-vuex中使用commit提交mutation来修改state的方法详解
2018/09/16 Javascript
JavaScript迭代器的含义及用法
2019/06/21 Javascript
layui table动态表头 改变表格头部 重新加载表格的方法
2019/09/21 Javascript
ES6 Object.assign()的用法及其使用
2020/01/18 Javascript
antd table按表格里的日期去排序操作
2020/11/17 Javascript
Python中比较特别的除法运算和幂运算介绍
2015/04/05 Python
Python使用scrapy采集数据过程中放回下载过大页面的方法
2015/04/08 Python
在Python中使用正则表达式的方法
2015/08/13 Python
python中string模块各属性以及函数的用法介绍
2016/05/30 Python
flask入门之表单的实现
2018/07/18 Python
详解Pycharm出现out of memory的终极解决方法
2020/03/03 Python
Redbubble法国:由独立艺术家设计的独特产品
2019/01/08 全球购物
Michael Kors香港官网:美国奢侈品品牌
2019/12/26 全球购物
机械工程师求职自我评价
2013/09/23 职场文书
2014年计算机专业个人自我评价
2014/01/19 职场文书
中学生获奖感言
2014/02/04 职场文书
优秀大学生自荐信
2014/06/09 职场文书
党员教师四风问题整改措施思想汇报
2014/10/08 职场文书
Python基础之Socket通信原理
2021/04/22 Python