基本语法
enumerate(iterable, start=0)
1、iterable: 可迭代对象(列表、元组、字符串等)
2、start: 索引的起始值,默认为0
基本用法
基本遍历
fruits = ['apple', 'banana', 'cherry'] for index, value in enumerate(fruits): print(index, value)
输出:
0 apple
1 banana
2 cherry
指定起始索引
for index, value in enumerate(fruits, start=1): print(index, value)
输出
1 apple
2 banana
3 cherry
实际应用场景
需要索引的循环
for i, item in enumerate(['a', 'b', 'c']): print(f"第{i+1}个元素是{item}")
输出
第1个元素是a
第2个元素是b
第3个元素是c
创建字典映射
names = ['alice', 'bob', 'charlie'] name_dict = {i: name for i, name in enumerate(names)} print(name_dict)
输出:
{0: 'alice', 1: 'bob', 2: 'charlie'}
处理文件行号
with open('file.txt') as f: for line_num, line in enumerate(f, start=1): print(f"{line_num}: {line.strip()}")
与range(len())对比
传统方式:
fruits = ['apple', 'banana', 'cherry'] for i in range(len(fruits)): print(i, fruits[i])
使用enumerate更简洁高效:
for i, fruit in enumerate(fruits): print(i, fruit)
注意事项
1、enumerate返回的是enumerate对象,可以转换为列表查看:
print(list(enumerate(fruits)))
输出
[(0, 'apple'), (1, 'banana'), (2, 'cherry')]
2、在python中,enumerate比手动维护计数器更pythonic(更符合python风格)
3、对于大型迭代,enumerate不会显著增加内存消耗,因为它也是惰性求值的
到此这篇关于python enumrate函数的具体使用的文章就介绍到这了,更多相关python enumrate函数内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论