enumerate()
是Python内置函数,主要作用是为一个可迭代对象添加一个索引序号。经常用于遍历列表、元组、字典等数据结构时,需要同时获取每个元素对应的索引值。
基本语法
enumerate(iterable, start=0)
iterable
:待添加序号的可迭代对象。start
:序号起始值,默认为0。
使用方法
使用enumerate()
的一般流程是先创建一个可迭代对象,然后在for
循环中,使用enumerate()
函数获取序号和对应的元素,进行相应的操作。代码示例如下:
lst = ['a', 'b', 'c']
for i, item in enumerate(lst):
print(f"{i}: {item}")
输出结果为:
0: a
1: b
2: c
在上述代码中,enumerate(lst)
返回了一个包含元组(0, 'a')
、(1, 'b')
、(2, 'c')
的可迭代对象,for
循环每次迭代获取一个元组,使用i, item
同时接收元组中的两个值。
如果要设置序号的起始值,可以在enumerate()
函数中传入start
参数,例如:
lst = ['a', 'b', 'c']
for i, item in enumerate(lst, start=1):
print(f"{i}: {item}")
输出结果为:
1: a
2: b
3: c
示例说明
下面更具体地介绍enumerate()
函数的使用方法。
示例1:使用enumerate()输出字典键值对
d = {'a': 1, 'b': 2, 'c': 3}
for idx, (key, value) in enumerate(d.items()):
print(f"{idx}: {key} => {value}")
输出结果为:
0: a => 1
1: b => 2
2: c => 3
在上例中,使用了d.items()
函数,将字典转换为其键值对的形式,即{'a': 1, 'b': 2, 'c': 3}
变成了[('a', 1), ('b', 2), ('c', 3)]
。然后使用enumerate()
函数获取序号和对应的键值对,再进行输出。
示例2:使用enumerate()计算列表中两个相邻元素的差值
lst = [2, 5, 10, 3, 8]
for i, item in enumerate(lst[:-1]):
diff = lst[i+1] - item
print(f"{i+1}: {diff}")
输出结果为:
1: 3
2: 5
3: -7
4: 5
在上例中,使用enumerate()
函数遍历lst
列表中除最后一个元素外的所有元素。然后计算当前元素和下一个元素的差值,并输出结果。
以上就是关于Python中enumerate()
函数的使用方法和示例。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python enumerate()添加序号 - Python技术站