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

yipeiwu_com6年前Python基础

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实现在tkinter中使用matplotlib绘制图形的方法示例

Python实现在tkinter中使用matplotlib绘制图形的方法示例

本文实例讲述了Python实现在tkinter中使用matplotlib绘制图形的方法。分享给大家供大家参考,具体如下: 一. 代码: # coding=utf-8 import s...

python3 实现调用串口功能

python调用串口,写入数据 #!/usr/bin/python3 import serial def serialTest(): try: port = "C...

Python脚本实现下载合并SAE日志

由于一些原因,需要SAE上站点的日志文件,从SAE上只能按天下载,下载下来手动处理比较蛋疼,尤其是数量很大的时候。还好SAE提供了API可以批量获得日志文件下载地址,刚刚写了python...

Python3基础教程之递归函数简单示例

概述 递归函数即直接或间接调用自身的函数,且递归过程中必须有一个明确的递归结束条件,称为递归出口。递归极其强大一点就是能够遍历任意的,不可预知的程序的结构,比如遍历复杂的嵌套列表。...

Python序列对象与String类型内置方法详解

本文实例讲述了Python序列对象与String类型内置方法。分享给大家供大家参考,具体如下: 前言 在Python数据结构篇中介绍了Python的序列类型数据结构,这次继续深入的学习序...