首页 > 解决方案 > 在python中使用枚举时无法迭代到多个列表

问题描述

我想打印下面列表中的每个值。我还需要知道索引。所以我想使用枚举:

a = [(10, 0, 3), (10, 10, 6), (10, 15, 4), (10, 20, 5), (10, 3, 3),
         (10, 5, 6), (10, 0, 3), (10, 10, 3), (10, 40, 6), (10, 45, 5), (10, 50, 6)]

for i, measurment in enumerate(a):
        for a,b,c in measurment:
            print( a,b,c)

但不幸的是,我遇到了这个错误:'int' 对象不可迭代。

标签: python

解决方案


不需要嵌套循环,可以直接解包:

a = [(10, 0, 3), (10, 10, 6), (10, 15, 4), (10, 20, 5), (10, 3, 3),
         (10, 5, 6), (10, 0, 3), (10, 10, 3), (10, 40, 6), (10, 45, 5), (10, 50, 6)]

for i, (a, b, c) in enumerate(a):
    print(i, a, b, c)

输出

0 10 0 3
1 10 10 6
2 10 15 4
3 10 20 5
4 10 3 3
5 10 5 6
6 10 0 3
7 10 10 3
8 10 40 6
9 10 45 5
10 10 50 6

推荐阅读