我正在尝试运行一个代码,它将在列表中找到列表的第二个元素,并对该代码段执行算术运算,但在尝试运行上述代码时(如下所示)
data_set_10 = [['A', 0, 0, 'E'], ['A', 0, 1, 'N'], ['A', 2, 2, 'S'], ['A', 2, 3, 'W'],
['B', 0, 3, 'E'], ['B', 0, 2, 'W'], ['B', 5, 2, 'N'],
['C', 1, 0, 'N'], ['C', 3, 2, 'E'],
['D', 3, 0, 'W']]
def draw_icons(data_set):
for group in data_set:
for item in group[1]:
print(-375 + (item * 75))
draw_icons(data_set_10)
我得到了错误
File "C:/Users/Chris/Downloads/test_draw_icons.py", line 9, in draw_icons for item in group[1]: TypeError: 'int' object is not iterable
这显然与代码部分有关
for item in group[1]
我应该怎么做才能让程序对列表中的项执行算术?我将举一个我想要的输出的例子:
-375
-375
-225
-225
依此类推,根据列表中每个列表的第二个元素。你知道吗
由于每个组是一个由4个项目组成的列表,通过使用
group[1]
,您选择了group
中的第二个项目,这是一个int
,因此没有什么可以迭代的。我想这就是你想要的行为只需删除该行并替换为
item = group[1]
,然后相应地重新插入,这样您的代码就会像或者,您可以转换2D列表,这样一个简单的下标将返回第二列元素
group[1]
是你的int
。你在尝试迭代一个int
。这显然行不通。你知道吗你只想:
相关问题 更多 >
编程相关推荐