Python enumerate() 函数用法
2023-09-17 22:27:43
enumerate()
是一个构造函数方法,返回给定的可迭代对象、序列、迭代器或支持迭代的对象enumerate
类的对象。
返回的枚举对象包含可迭代对象中每个项的元组,其中包括索引和通过迭代可迭代获得的值。
语法:
enumerate(iterable, start=0)
参数:
可迭代- :必须向其添加枚举器的可迭代对象。
- 开始:(可选)起始索引。默认值为 0。
返回值:
返回一个enumerate
对象。
下面的示例获取列表的枚举类的对象,并将枚举转换为列表。
cities = ['Delhi','Chicago','New York']
enum = enumerate(cities)
print(type(enum))
enumlist = list(enum)
print(enumlist)
输出:
<type 'enumerate'>
[(0, 'Delhi'), (1, 'Chicago'), (2, 'New York')]
在上面的例子中,默认索引从 0 开始,但我们可以将初始计数器更改为任何数字。
cities = ['Delhi','Chicago','New York']
enum = enumerate(cities, start=5)
print(list(enum))
输出:
[(5, 'Delhi'), (6, 'Chicago'), (7, 'New York')]
enumerate()
函数可以与循环一起使用,如下所示。
for index, city in enumerate(cities):
print(index,city)
输出:
0 Delhi
1 Chicago
2 New York
上面的 for-in 循环调用枚举的 __next__()
方法,该方法删除并返回每个元素,如下所示。
cities = ['Delhi','Chicago','New York']
enum = enumerate(cities)
print(enum.__next__())
print(enum.__next__())
print(enum.__next__())
输出:
(0, 'Delhi')
(1, 'Chicago')
(2, 'New York')