0

我正在尝试比较两个列表是否相等。

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

我在列表中插入整数。这个错误是什么意思?

4

2 回答 2

2

该错误表明vaandvb是字符串,因此您不能将它们用作索引。如果它们包含一些您想用于索引的整数,那么使用[int(va)][int(vb)]它可能会起作用。

interjay 也是对的,您的代码与回溯不同!

于 2013-10-11T22:13:44.757 回答
1

va 和 vb 是什么?它需要是一个 int,假设节点是一个列表。如果您确实希望它使用字符串作为索引,请改用 dict。
您可能想要做的是:

grafo.node[int(va)] == grafo.node[int(vb)]
于 2013-10-11T22:09:27.947 回答