Python-enumerate函数(通过enumerate列举函数,输出List的序号和元素)
前言
在Python编程中,我们经常需要在循环遍历一个序列时同时获取元素的索引和值。为了实现这一需求,Python提供了一个内置的enumerate函数,它能够方便地为我们提供序列中每个元素的索引和值。
enumerate()函数将一个可遍历iterable数据对象(如list列表、tuple元组、dictionary字典、str字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环当中。
enumerate函数(列举函数 | 枚举函数)
enumerate函数接受两个参数:一个可迭代对象和一个可选的起始索引值。
语法: enumerate(iterable,start)
说明: iterable:一个可迭代的对象,如列表、元组等。
start(可选):计数的起始值,默认为0。
应用场景
(1)跟踪循环迭代次数
enumerate常用于需要跟踪循环迭代次数的场景。
my_list = [1, 2, 3, 4, 5] for index, value in enumerate(my_list): print(f"迭代次数: {index}, 值: {value}")
(2)组合多个列表
enumerate可以与zip函数结合使用,同时遍历多个列表。
names = ['Alice', 'Bob', 'Charlie'] scores = [90, 95, 88] for index, (name, score) in enumerate(zip(names, scores), start=1): print(f"学生 {index} 名字: {name}, 分数: {score}")
注意事项
1、enumerate返回的是一个枚举对象,它是一个可迭代对象。
2、通过enumerate获取的索引是从start参数指定的值开始的,而不是从可迭代对象的第一个元素开始。
3、在使用enumerate时,应避免在循环内部修改可迭代对象的长度,否则可能会导致意外的结果。
示例
以下是一个简单的例子:
my_list = ['apple', 'banana', 'cherry'] for index, item in enumerate(my_list): print(f"{index}: {item}")
输出结果:
0: apple
1: banana
2: cherry
如果你想从1开始索引,可以在enumerate中设置start参数为1:
for index, item in enumerate(my_list, start=1): print(f"{index}: {item}")
输出结果:
1: apple
2: banana
3: cherry
遍历字典中的元素
my_dic = {'k1':1100,'k2':2200,'k3':3300} for index,(key,value) in enumerate(my_dic.items(),start=1): print(index,key,value)
输出结果:
1 k1 1100
2 k2 2200
3 k3 3300
本文来自博客园,作者:业余砖家,转载请注明原文链接:https://www.cnblogs.com/yeyuzhuanjia/p/18373002