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 15 Python
使用Python3 编写简单信用卡管理程序
Dec 21 Python
python3+PyQt5+Qt Designer实现堆叠窗口部件
Apr 20 Python
Python中的支持向量机SVM的使用(附实例代码)
Jun 26 Python
django admin组件使用方法详解
Jul 19 Python
python从list列表中选出一个数和其对应的坐标方法
Jul 20 Python
Python学习笔记之错误和异常及访问错误消息详解
Aug 08 Python
Python一键查找iOS项目中未使用的图片、音频、视频资源
Aug 12 Python
浅谈django 重载str 方法
May 19 Python
python中lower函数实现方法及用法讲解
Dec 23 Python
win10+anaconda安装yolov5的方法及问题解决方案
Apr 29 Python
Python OpenGL基本配置方式
May 20 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
Linux下进行MYSQL编程时插入中文乱码的解决方案
2007/03/15 PHP
同台服务器使用缓存APC效率高于Memcached的演示代码
2010/02/16 PHP
PHP连接MSSQL方法汇总
2016/02/05 PHP
linux平台编译安装PHP7并安装Redis扩展与Swoole扩展实例教程
2016/09/30 PHP
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
2016/12/14 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
用PHP的反射实现委托模式的讲解
2019/03/22 PHP
基于jquery实现后台左侧菜单点击上下滑动显示
2013/04/11 Javascript
Jquery实现Div上下移动示例
2014/04/23 Javascript
js类定义函数时用prototype与不用的区别示例介绍
2014/06/10 Javascript
JavaScript获取当前网页标题(title)的方法
2015/04/03 Javascript
jquery图片滚动放大代码分享(2)
2015/08/28 Javascript
JS实现选中当前菜单后高亮显示的导航条效果
2015/10/15 Javascript
angular学习之ngRoute路由机制
2017/04/12 Javascript
Node.js简单入门前传
2017/08/21 Javascript
微信小程序视图template模板引用的实例详解
2017/09/20 Javascript
jQuery实现模糊搜索功能的方法分析
2018/06/29 jQuery
echarts整合多个类似option的方法实例
2018/07/10 Javascript
javascript中闭包closure的深入讲解
2021/03/03 Javascript
python如何实现excel数据添加到mongodb
2015/07/30 Python
Python入门教程之运算符与控制流
2016/08/17 Python
Django实战之用户认证(用户登录与注销)
2018/07/16 Python
Pandas:Series和DataFrame删除指定轴上数据的方法
2018/11/10 Python
python 实现字符串下标的输出功能
2020/02/13 Python
Python json解析库jsonpath原理及使用示例
2020/11/25 Python
专门出售各种儿童读物的网站:Put Me In The Story
2016/08/07 全球购物
Carmen Sol官网:购买果冻鞋、手袋和配件
2021/01/01 全球购物
什么是反射?如何实现反射?
2016/07/25 面试题
名词解释型面试题(主要是网络)
2013/12/27 面试题
高中校园广播稿
2014/01/11 职场文书
银行领导证婚词
2014/01/11 职场文书
2014年计算机专业个人自我评价
2014/01/19 职场文书
应届电子商务毕业自荐书范文
2014/02/11 职场文书
公司演讲稿开场白
2014/08/25 职场文书
小学国庆节活动方案策划书
2014/09/16 职场文书
2014年团队工作总结
2014/11/24 职场文书