python中enumerate() 与zip()函数的使用比较实例分析


Posted in Python onSeptember 03, 2019

本文实例讲述了python中enumerate() 与zip()函数的使用比较。分享给大家供大家参考,具体如下:

enumerate() 与zip()是两个常用的内置函数,这两个函数功能类似,同时又存在差异。介绍如下:

一、enumerate() 函数

该函数中文解释:枚举、列举的意思。

用于将一个可遍历的数据对象(如:列表、元组、字符串等)组合为一个索引序列,同时列出:数据和数据下标

一般在for循坏中使用,可同时得到数据对象的值及对应的索引值

a = ['one','two','three','four','five']
for a_index, a_value in enumerate(a):
  print('{}:{}'.format(a_index,a_value))

运行结果为:

0:one
1:two
2:three
3:four
4:five

注意:在enumerate()函数中,也可以给第2个参数“start”的值,指定当前索引的****初始值,如下例所示:

b = ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']
for b_index, b_value in enumerate(b,start=1):
  print('星期{}:{}'.format(b_index,b_value))

运行结果为:

星期1:Monday
星期2:Tuesday
星期3:Wednesday
星期4:Thursday
星期5:Friday
星期6:Saturday
星期7:Sunday

二、zip()函数

该函数用于将多个可迭代对象作为参数,依次将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。

如对于下面的例子:

names = ['张三','李四','王五']
sexs = ['boy','girl','boy']
scores = [86, 92, 75]
for name, sex, score in zip(names,sexs,scores):
  print('{}: {}, {}'.format(name, sex, score))

运行结果为:

张三: boy, 86
李四: girl, 92
王五: boy, 75

注意:如果各个可迭代对象的元素个数不一致,则返回的对象长度与最短的可迭代对象相同。例如,对上面的例子,列表scores减少一个元素,修改如下:

names = ['张三','李四','王五']
sexs = ['boy','girl','boy']
scores = [86, 92]
for name, sex, score in zip(names,sexs,scores):
  print('{}: {}, {}'.format(name, sex, score))

运行结果为:

张三: boy, 86
李四: girl, 92

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》

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

Python 相关文章推荐
python实现划词翻译
Apr 23 Python
Python编程语言的35个与众不同之处(语言特征和使用技巧)
Jul 07 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
Oct 18 Python
python 实现在Excel末尾增加新行
May 02 Python
python实现dijkstra最短路由算法
Jan 17 Python
对Python3之进程池与回调函数的实例详解
Jan 22 Python
深入理解Django-Signals信号量
Feb 19 Python
浅析python 中大括号中括号小括号的区分
Jul 29 Python
关于Tensorflow分布式并行策略
Feb 03 Python
基于python图书馆管理系统设计实例详解
Aug 05 Python
Python基于locals返回作用域字典
Oct 17 Python
用OpenCV进行年龄和性别检测的实现示例
Jan 29 Python
python网络编程之多线程同时接受和发送
Sep 03 #Python
springboot配置文件抽离 git管理统 配置中心详解
Sep 02 #Python
python生成随机红包的实例写法
Sep 02 #Python
Django发送邮件功能实例详解
Sep 02 #Python
python读取Excel表格文件的方法
Sep 02 #Python
python将字典列表导出为Excel文件的方法
Sep 02 #Python
python数据处理之如何选取csv文件中某几行的数据
Sep 02 #Python
You might like
解决php表单重复提交实现方法
2015/09/29 PHP
php通过pecl方式安装扩展的实例讲解
2018/02/02 PHP
基于PHP实现用户登录注册功能的详细教程
2020/08/04 PHP
xml 与javascript结合的问题解决方法
2007/03/24 Javascript
JS 的应用开发初探(mootools)
2009/12/19 Javascript
超酷的网页音乐播放器DewPlayer使用方法
2010/12/18 Javascript
从零开始学习jQuery (六) jquery中的AJAX使用
2011/02/23 Javascript
javascript ajax 仿百度分页函数
2013/10/29 Javascript
js形成页面的一种遮罩效果实例代码
2014/01/04 Javascript
JavaScript实现twitter puddles算法实例
2014/12/06 Javascript
Boostrap入门准备之border box
2016/05/09 Javascript
必备的JS调试技巧汇总
2016/07/20 Javascript
js中遍历Map对象的简单实例
2016/08/08 Javascript
form表单数据封装成json格式并提交给服务器的实现方法
2017/12/14 Javascript
使用vuex的state状态对象的5种方式
2018/04/19 Javascript
vue实现移动端轻量日期组件不依赖第三方库的方法
2019/04/28 Javascript
自定义javascript验证框架示例【附源码下载】
2019/05/31 Javascript
layui prompt 设置允许空白提交的方法
2019/09/24 Javascript
微信小程序实现上拉加载功能示例【加载更多数据/触底加载/点击加载更多数据】
2020/05/29 Javascript
微信小程序文章列表功能完整实例
2020/06/03 Javascript
Python中实现字符串类型与字典类型相互转换的方法
2014/08/18 Python
python Django模板的使用方法
2016/01/14 Python
Saltstack快速入门简单汇总
2016/03/01 Python
python验证码识别的示例代码
2017/09/21 Python
python pands实现execl转csv 并修改csv指定列的方法
2018/12/12 Python
Python新手如何进行闭包时绑定变量操作
2020/05/29 Python
Pytorch环境搭建与基本语法
2020/06/03 Python
入党转预备思想汇报
2014/01/07 职场文书
腾讯广告词
2014/03/19 职场文书
求职者怎样写自荐信
2014/04/13 职场文书
学风建设演讲稿
2014/09/12 职场文书
拆迁委托协议书
2014/09/15 职场文书
2015年调度员工作总结
2015/04/30 职场文书
2016教师节感恩话语
2015/12/09 职场文书
MySql 8.0及对应驱动包匹配的注意点说明
2021/06/23 MySQL
一级电子管军用接收机测评
2022/04/05 无线电