Python中enumerate()函数编写更Pythonic的循环


Posted in Python onMarch 06, 2018

enumerate函数

enumerate是一个Python内置函数,一个功能强大的内置函数。其实功能强大不足以形容它, 但是很难用一个词来形容它的用途。

让我们来看看一个使用enumerate进行循环的例子

names = ['李四', '张三', '王二']
for index, name in enumerate(names):
  print(f'{index}: {value}')

下面是这个循环的结果

0: 李四
1: 张三
2: 王二

这通常是一个很有用的方式去循环,但很多初学者甚至中级开发人员都不知道这一点。通常来说,他们的代码会这样写(需要注意的是,这是一种不好的写法)

names = ['李四', '张三', '王二']
for i in range(len(names)):
  print(i, my_items[i])

另外一点是,我们可以指定循环的索引,例如

names = ['李四', '张三', '王二']
for index, name in enumerate(names, 1):
  print(f'{index}: {value}')

结果如下

1: 李四
2: 张三
3: 王二

关于enumerate的另一个重要的知识点是,他的内部实现使用的是迭代器,所以当需要循环的对象特别大的时候我们不用浪费许多资源去全部展开。

Python 相关文章推荐
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
May 02 Python
Python文本相似性计算之编辑距离详解
Nov 28 Python
快速了解Python相对导入
Jan 12 Python
Python使用pickle模块存储数据报错解决示例代码
Jan 26 Python
Python企业编码生成系统之系统主要函数设计详解
Jul 26 Python
解决django同步数据库的时候app models表没有成功创建的问题
Aug 09 Python
如何在VSCode上轻松舒适的配置Python的方法步骤
Oct 28 Python
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解
Feb 11 Python
GDAL 矢量属性数据修改方式(python)
Mar 10 Python
使用python把xmind转换成excel测试用例的实现代码
Oct 12 Python
ffmpeg+Python实现B站MP4格式音频与视频的合并示例代码
Oct 21 Python
利用Python过滤相似文本的简单方法示例
Feb 03 Python
python距离测量的方法
Mar 06 #Python
Python入门之后再看点什么好?
Mar 05 #Python
Python 装饰器实现DRY(不重复代码)原则
Mar 05 #Python
Tensorflow实现卷积神经网络用于人脸关键点识别
Mar 05 #Python
python入门教程 python入门神图一张
Mar 05 #Python
详解TensorFlow在windows上安装与简单示例
Mar 05 #Python
python 中if else 语句的作用及示例代码
Mar 05 #Python
You might like
PHP DataGrid 实现代码
2009/08/12 PHP
php中Ctype函数用法详解
2014/12/09 PHP
PHP结合Ueditor并修改图片上传路径
2016/10/16 PHP
PHP常量及变量区别原理详解
2020/08/14 PHP
基于jquery的jqDnR拖拽溢出的修改
2011/02/12 Javascript
ajax更新数据后,jquery、jq失效问题
2011/03/16 Javascript
jQuery News Ticker 基于jQuery的即时新闻行情展示插件
2011/11/05 Javascript
jquery实现带单选按钮的表格行选中时高亮显示
2013/08/01 Javascript
js中的前绑定和后绑定详解
2013/08/01 Javascript
CSS图片响应式 垂直水平居中
2015/08/14 Javascript
基于Javascript实现倒计时功能
2016/02/22 Javascript
jQuery.form插件的使用及跨域异步上传文件
2016/04/27 Javascript
jQuery弹出窗口简单实现代码
2017/03/09 Javascript
jQuery实现可兼容IE6的滚动监听功能
2017/09/20 jQuery
EasyUI实现下拉框多选功能
2017/11/07 Javascript
详解puppeteer使用代理
2018/12/27 Javascript
《javascript设计模式》学习笔记五:Javascript面向对象程序设计工厂模式实例分析
2020/04/08 Javascript
JavaScript undefined及null区别实例解析
2020/07/21 Javascript
vue element-ui中table合计指定列求和实例
2020/11/02 Javascript
[51:22]Fnatic vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python编写百度贴吧的简单爬虫
2015/04/02 Python
Python实现从SQL型数据库读写dataframe型数据的方法【基于pandas】
2019/03/18 Python
numpy 声明空数组详解
2019/12/05 Python
利用pyshp包给shapefile文件添加字段的实例
2019/12/06 Python
Python字符串、列表、元组、字典、集合的补充实例详解
2019/12/20 Python
python中if嵌套命令实例讲解
2021/02/25 Python
英国复古服装和球衣购买网站:3Retro Football
2018/07/09 全球购物
乌克兰电子产品和家用电器购物网站:TOUCH
2019/08/09 全球购物
中专生自荐信
2013/10/12 职场文书
规划编制实施方案
2014/03/15 职场文书
团代会主持词
2014/04/02 职场文书
小兵张嘎观后感300字
2015/06/03 职场文书
小学语文新课改心得体会
2016/01/22 职场文书
高中政治教学反思
2016/02/23 职场文书
python实现黄金分割法的示例代码
2021/04/28 Python
根德5570型九灯四波段立体声收音机是电子管收音机的楷模 ? 再论5570
2022/04/05 无线电