私は自分自身のオブジェクトを持っています。私は、すべてのペパロニからの縁のリストと、ペパロニのリストを持っています。次に、networkxを使ってグラフを作成します。私はペパロニから別のものへの最短経路の重量を見出そうとしています。エラーが何であるかによう私自身のオブジェクトでnetworkxを使用しています
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "pizza.py", line 437, in shortestPath
cost = nx.shortest_path_length(a, spepp, tpepp, True)
File "/Library/Python/2.6/site-packages/networkx-1.3-py2.6.egg/networkx/algorithms/shortest_paths/generic.py", line 181, in shortest_path_length
paths=nx.dijkstra_path_length(G,source,target)
File "/Library/Python/2.6/site-packages/networkx-1.3-py2.6.egg/networkx/algorithms/shortest_paths/weighted.py", line 119, in dijkstra_path_length
(length,path)=single_source_dijkstra(G,source, weight = weight)
File "/Library/Python/2.6/site-packages/networkx-1.3-py2.6.egg/networkx/algorithms/shortest_paths/weighted.py", line 424, in single_source_dijkstra
edata=iter(G[v].items())
File "/Library/Python/2.6/site-packages/networkx-1.3-py2.6.egg/networkx/classes/graph.py", line 323, in __getitem__
return self.adj[n]
KeyError: <pizza.pepperoni object at 0x100ea2810>
任意のアイデアを、または私がないようにするために私のピザのクラスに追加する必要があります。しかし、私は次のように次のようにnetworkxから内部のものをトレースした、エラーを取得していますこのKeyErrorを取得しますか?
編集:正しく書式設定されたエッジがあります。オブジェクトがノードとして扱われるかどうかはわかりません。
正直言って、私の問題が正確に何だったのか分かりませんが、私はそのオブジェクトについてだまされてしまい、最終的に正しく動作するようになりました。よく考えられた応答に感謝します。それは私の考えを持って:) – Trim