enumerate
是 Python 中一个常用的内置函数,用于将一个可遍历的数据对象(如列表、元组、字符串等)组合为一个索引序列,常用于循环遍历时同时获取元素和对应的索引。
函数语法
enumerate(iterable, start=0)
参数:
iterable
:要进行枚举的可迭代对象,比如列表、元组、字符串等。start
(可选):用于指定索引开始的值,默认为 0,表示从 0 开始递增。
返回值:
enumerate
函数返回一个迭代器,每次迭代产生一个包含索引和对应元素的元组。
示例代码
# 示例 1: 使用默认索引起始值
fruits = ['apple', 'banana', 'mango', 'kiwi']
for index, fruit in enumerate(fruits):
print(index, fruit)
# 示例 2: 指定起始索引值为 1
colors = ['red', 'green', 'blue']
for idx, color in enumerate(colors, start=1):
print(idx, color)
# 示例 3: 使用 enumerate 获取索引和元素组成的元组列表
animals = ['cat', 'dog', 'elephant']
indexed_animals = list(enumerate(animals, start=3))
print(indexed_animals)
运行结果: 示例 1 输出:
0 apple
1 banana
2 mango
3 kiwi
示例 2 输出:
1 red
2 green
3 blue
示例 3 输出:
[(3, 'cat'), (4, 'dog'), (5, 'elephant')]
总结
enumerate
是一个非常有用的函数,特别在需要同时遍历元素和索引的情况下。通过指定可迭代对象和可选的起始索引值,它返回一个迭代器,每次迭代产生一个包含索引和元素的元组。这使得代码更加简洁,并且避免了手动维护索引变量。在循环中,通过解包元组可以轻松地获得索引和元素,从而更方便地处理数据。