Python enumerate 与 range 技巧

enumerate 和 range 是 Python 中最常用的迭代工具。

1. enumerate 基本用

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

for i, fruit in enumerate(fruits):
    print(f"{i}: {fruit}")

# 输出:
# 0: apple
# 1: banana
# 2: orange

指定起始索引

for i, fruit in enumerate(fruits, start=1):
    print(f"{i}: {fruit}")

# 输出:
# 1: apple
# 2: banana
# 3: orange

2. range 技巧

# range(start, stop, step)
range(5)        # 0,1,2,3,4
range(1, 6)     # 1,2,3,4,5
range(0, 10, 2) # 0,2,4,6,8
range(5, 0, -1)  # 5,4,3,2,1

倒序遍历

for i in range(len(fruits) - 1, -1, -1):
    print(fruits[i])

3. zip 并行迭代

names = ["Alice", "Bob"]
ages = [25, 30]

for name, age in zip(names, ages):
    print(f"{name}: {age}")

4. 组合使用

for i, (name, age) in enumerate(zip(names, ages)):
    print(f"{i}: {name}, {age}")

5. 实用示例

获取索引值对

def find_index(items, target):
    for i, item in enumerate(items):
        if item == target:
            return i
    return -1

enumerate 和 range 是 Python 编程的基础技能。