人民号首页,人民号缩略图,人民号logo 人民号首页,人民号缩略图,人民号logo 人民号首页,人民号缩略图,人民号logo 人民号首页,人民号缩略图,人民号logo

enumerate python用法

python高手养成

|

2023-02-16 17:36:58

enumerate python用法为:enumerate(iterable, start=0),参数iterable为一个可迭代对象,start表示索引起始值。该函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,返回一个enumerate对象实例。本文详解其用法。

enumerate()函数语法

enumerate()在Python中是一个内置函数,简单来说该函数就是把一个可迭代对象实例变为一个带索引的enumerate对象实例返回,本质上这个enumerate也是一个可迭代对象。语法如下:

enumerate(iterable, start=0)

参数解释:

iterable->一个可遍历的数据对象实例

start->索引对象实例的起始索引值

可以理解为enumerate自动为可迭代对象每一个元素加了一个索引值,然后返回了一个enumerate对象实例,而这个实例也是一个可迭代对象(可以使用for循环遍历每个元素)。

>>>

<enumerate object at 0x00000202EDE145C0>

有点绕口,下面我们用几个例子来展示其用法。

英文字母编号输出

我们给英文小写字母编上号,打印输出:

默认起始索引值为0,也可以使用start参数控制。

统计文件行数

有一个文本文件,我们想知道这个文件的行数。并且,检索某一文本在第几行出现过。这个问题怎么用Python来实现呢?

我们从网上下载了一个《水浒传》的txt文本,来统计下总共有多少行,以及“武松”在书中出现的次数,并统计出现在第几行?代码如下:

大家可以使用open()函数直接读取,遍历统计行数。但是,使用enumerate()函数时,速度方面明显有优势的。可以一试!下面我们来看另一个案例。

根据成绩排名

李老师把学生的成绩统计在了一个字典中。我们需要对字典中的成绩进行排名输出。用Python如何实现呢?

代码如下:

成功实现这一需求,这里需要注意的是,sorted()函数对字典按键排序的方法。这个方法经常用到哦。

解析多个变量

除了上面,enumerate()还有一个有意思的用法。试想,如果我们想把前一个例子中的打印输出更精确一点呢。比如,实现下图的效果。

这里我们利用enumerate实现了一个“解包”效果。源代码如下:

好了,今天内容就到这里,小伙伴掌握了么?我没解释到位的地方请下方留言或者进群讨论。

想了解更多精彩内容,快来关注python高手养成

特别声明:本文为人民日报新媒体平台“人民号”作者上传并发布,仅代表作者观点。人民日报提供信息发布平台。

写下你的评论

热门评论
{{item.app_user_name}} {{item.news_timestamp}} {{item.like_num}} 赞

{{item.content}}

最新评论
{{item.app_user_name}} {{item.news_timestamp}} {{item.like_num}} 赞
{{++index}}
{{cell.app_user_name}} {{cell.news_timestamp}} {{cell.like_num}} 赞

{{cell.content}}

{{item.content}}

已加载全部内容
相关推荐

实时热点