美文网首页
Python内置函数enumerate()

Python内置函数enumerate()

作者: 简书冷雨 | 来源:发表于2017-09-15 09:53 被阅读0次

enumerate(iterable, start=0)

该函数是把可迭代对象转换为枚举对象。

说明

iterable 是必须是一个序列、迭代器或者其他支持迭代的对象,比如像列表、数组、字典等对象;
start 是枚举的起始值,默认是从0开始。

函数实现原理是这样,从迭代对象的方法 __next__() 取得一项值,然后就对参数 start 开始计数,每取一项增加 1,生成一个元组返回。该函数等价于:

def enumerate(sequence, start=0):
    n = start
    for elem in sequence:
        yield n, elem
        n += 1

示例

>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> enumerate(seasons)
<enumerate object at 0x02A57710>
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
>>> list(enumerate(seasons, start=1))
[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
>>> list(enumerate(seasons, 2))
[(2, 'Spring'), (3, 'Summer'), (4, 'Fall'), (5, 'Winter')]

相关文章

网友评论

      本文标题:Python内置函数enumerate()

      本文链接:https://www.haomeiwen.com/subject/vaudsxtx.html