Python enumerate() 函数
Python enumerate() 函数
描述
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
Python 2.3. 以上版本可用,2.6 添加 start 参数。
语法
以下是 enumerate() 方法的语法:
enumerate(sequence, [start=0])
参数
- sequence -- 一个序列、迭代器或其他支持迭代对象。
- start -- 下标起始位置。
返回值
返回 enumerate(枚举) 对象。
实例
以下展示了使用 enumerate() 方法的实例:
>>>seasons = ['Spring', 'Summer', 'Fall', 'Winter'] >>> list(enumerate(seasons)) [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] >>> list(enumerate(seasons, start=1)) # 下标从 1 开始 [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
普通的 for 循环
>>>i = 0 >>> seq = ['one', 'two', 'three'] >>> for element in seq: ... print i, seq[i] ... i +=1 ... 0 one 1 two 2 three
for 循环使用 enumerate
>>>seq = ['one', 'two', 'three'] >>> for i, element in enumerate(seq): ... print i, element ... 0 one 1 two 2 three
3 篇笔记 写笔记
心有猛虎,当细嗅蔷薇
Python 内置函数
浙公网安备 33010602011771号
叶秋
856***23@qq.com
巧妙利用 enumerate() 批量修改列表内的元素:
list1 = ['01','02','03'] unit_element = '1' for i,element in enumerate(list1): list1[i] = unit_element + element print(list1)输出结果:
['101', '102', '103']叶秋
856***23@qq.com
AK
133***0166@QQ.com
上面的例子举的不合适,要得到想的效果,不如推导式:
list1 = ['01','02','03'] list1=["1"+str for str in list1] print(list1)输出结果:
['101', '102', '103']AK
133***0166@QQ.com
PortosHan
415***944@qq.com
实现方式不同,还可以使用 map 函数:
list11 = ['01', '02', '03'] print(list(map(lambda x: '1' + x, list11)))PortosHan
415***944@qq.com