python中enumerate的作用

Question

enumerate

Answer

all_label` �

Question

enumerate

Answer

enumerate 是 Python 的一个内置函数,用于在遍历可迭代对象(如列表、字符串等)时,同时获取元素的索引和值。它的基本语法如下:

enumerate(iterable, start=0)

参数说明:

  • iterable:要遍历的可迭代对象(如列表、元组、字符串等)
  • start(可选):索引的起始值,默认为 0

返回值:

返回一个枚举对象(enumerate object),可以迭代获取包含索引和值的元组 (index, value)

示例代码:

fruits = ['apple', 'banana', 'orange']

# 基本用法
for index, fruit in enumerate(fruits):
    print(index, fruit)
# 输出:
# 0 apple
# 1 banana
# 2 orange

# 指定起始索引
for index, fruit in enumerate(fruits, start=1):
    print(index, fruit)
# 输出:
# 1 apple
# 2 banana
# 3 orange

build_label_2_dict 函数中的应用:

在你提供的代码中:

def build_label_2_dict(all_label):
    return {k:i for i,k in enumerate(set(all_label))}

这行代码做了以下工作:

  1. set(all_label):先对标签列表去重
  2. enumerate(set(all_label)):为每个唯一标签分配一个从0开始的索引
  3. 使用字典推导式创建字典 {标签:索引}

等价写法:

def build_label_2_dict(all_label):
    label_dict = {}
    for i, label in enumerate(set(all_label)):
        label_dict[label] = i
    return label_dict

特点:

  1. 自动处理索引计数
  2. 代码更简洁,避免手动维护计数器
  3. 常用于需要同时访问元素索引和值的场景

enumerate 是 Python 中非常实用的内置函数,可以简化需要索引的循环代码。

posted @ 2025-08-12 01:00  李大嘟嘟  阅读(12)  评论(0)    收藏  举报