我试图比较两个列表是否相等。
if grafo.node[va,vb] == grafo.node[va,vb]:
我收到此错误:
Traceback (most recent call last):
File "C:/Python33/Archive/PythonGrafos/Alpha.py", line 85, in <module>
menugrafos()
File "C:/Python33/Archive/PythonGrafos/Alpha.py", line 55, in menugrafos
Beta.criararesta(grafo,va,vb)
File "C:/Python33/Archive/PythonGrafos\Beta.py", line 29, in criararesta
if grafo.node[va,vb] == grafo.node[va,vb]:
TypeError: list indices must be integers, not tuple
我在列表中插入整数。这个错误意味着什么?
答案 0 :(得分:2)
错误表明va
和vb
是字符串,因此您不能将它们用作索引。如果它们包含您想要用于索引的某个整数,那么使用[int(va)][int(vb)]
它可能会有效。
同样是interjay是对的,你的代码与回溯不同!
答案 1 :(得分:1)
什么是va和vb?它必须是一个int,假设该节点是一个列表。如果您确实希望它使用字符串作为索引,请改用字典 你可能想做的是:
grafo.node[int(va)] == grafo.node[int(vb)]