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 相关文章推荐
Python 文件和输入输出小结
Oct 09 Python
selenium处理元素定位点击无效问题
Jun 12 Python
对Python _取log的几种方式小结
Jul 25 Python
Python3将数据保存为txt文件的方法
Sep 12 Python
将tensorflow模型打包成PB文件及PB文件读取方式
Jan 23 Python
opencv python图像梯度实例详解
Feb 04 Python
基于matplotlib xticks用法详解
Apr 16 Python
新建文件时Pycharm中自动设置头部模板信息的方法
Apr 17 Python
Python 存取npy格式数据实例
Jul 01 Python
python Selenium 库的使用技巧
Oct 16 Python
python中pymysql包操作数据库方法
Apr 19 Python
LyScript实现绕过反调试保护的示例详解
Aug 14 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编程最快明白》第六讲:Mysql数据库操作
2010/11/01 PHP
PHP限制页面只能在微信自带浏览器访问的代码
2014/01/15 PHP
php实现通过cookie换肤的方法
2015/07/13 PHP
使用图灵api创建微信聊天机器人
2015/07/23 PHP
基于jquery的复制网页内容到WORD的实现代码
2011/02/16 Javascript
JavaScript通过正则表达式实现表单验证电话号码
2014/03/07 Javascript
JavaScript通过select动态更换图片的方法
2015/03/23 Javascript
JS显示表格内指定行html代码的方法
2015/03/31 Javascript
如何在JS中实现相互转换XML和JSON
2016/07/19 Javascript
详解nodejs express下使用redis管理session
2017/04/24 NodeJs
Bootstrap table学习笔记(2) 前后端分页模糊查询
2017/05/18 Javascript
浅谈angular.js跨域post解决方案
2017/08/30 Javascript
原生js实现简单的模态框示例
2017/09/08 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
2017/10/16 Javascript
JS如何实现封装列表右滑动删除收藏按钮
2020/07/23 Javascript
js实现Element中input组件的部分功能并封装成组件(实例代码)
2021/03/02 Javascript
[01:04:39]OG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
在Python中用keys()方法返回字典键的教程
2015/05/21 Python
python爬虫框架talonspider简单介绍
2017/06/09 Python
python实现简易通讯录修改版
2018/03/13 Python
django js实现部分页面刷新的示例代码
2018/05/28 Python
利用Anaconda简单安装scrapy框架的方法
2018/06/13 Python
使用python将大量数据导出到Excel中的小技巧分享
2018/06/14 Python
django的聚合函数和aggregate、annotate方法使用详解
2019/07/23 Python
使用tensorflow框架在Colab上跑通猫狗识别代码
2020/04/26 Python
Python实现PS滤镜中的USM锐化效果
2020/12/04 Python
CSS3中Transform动画属性用法详解
2016/07/04 HTML / CSS
HTML5调用手机发短信和打电话功能
2020/04/29 HTML / CSS
Surfdome西班牙:世界上最受欢迎的生活方式品牌
2019/02/13 全球购物
机械设计及其自动化专业推荐信
2013/10/31 职场文书
护士演讲稿范文
2014/01/05 职场文书
火锅店创业计划书范文
2014/02/02 职场文书
金融管理毕业生求职信
2014/03/03 职场文书
2014小学年度工作总结
2014/12/20 职场文书
2015年公共机构节能宣传周活动总结
2015/03/26 职场文书
CSS实现两列布局的N种方法
2021/08/02 HTML / CSS