networkx find_negative_cycle 参数
networkx find_negative_cycle parameters
我应该将什么作为源参数传递给 python networkx 模块的 find_negative_cycle()
方法?在 documentation 它说要传递一个列表,但是当我尝试这样做时,我得到错误:
TypeError: unhashable type: 'list'
您也可以尝试修改函数本身
https://github.com/networkx/networkx/blob/main/networkx/algorithms/shortest_paths/weighted.py#L2191
在 find_negative_cycle
行 2191
pred = {source: []}
v = _inner_bellman_ford(G, [source], weight, pred=pred)
和
pred = {v: [] for v in sources}
v = _inner_bellman_ford(G, source, weight, pred=pred)
如果 source
是一个列表。
我认为应该报告此问题
你能试试这个吗:
def get_sequence_upto(x):
for i in range(x):
yield i
source = get_sequence_upto([1,2,3])
find_negative_cycle(G, source )
其中 [1,2,3] 应该是您的来源列表
文档中有错误。它应该在 2.8.1 版本中修复
https://github.com/networkx/networkx/issues/5610#event-6575071112
我应该将什么作为源参数传递给 python networkx 模块的 find_negative_cycle()
方法?在 documentation 它说要传递一个列表,但是当我尝试这样做时,我得到错误:
TypeError: unhashable type: 'list'
您也可以尝试修改函数本身
https://github.com/networkx/networkx/blob/main/networkx/algorithms/shortest_paths/weighted.py#L2191
在 find_negative_cycle
行 2191
pred = {source: []}
v = _inner_bellman_ford(G, [source], weight, pred=pred)
和
pred = {v: [] for v in sources}
v = _inner_bellman_ford(G, source, weight, pred=pred)
如果 source
是一个列表。
我认为应该报告此问题
你能试试这个吗:
def get_sequence_upto(x):
for i in range(x):
yield i
source = get_sequence_upto([1,2,3])
find_negative_cycle(G, source )
其中 [1,2,3] 应该是您的来源列表
文档中有错误。它应该在 2.8.1 版本中修复 https://github.com/networkx/networkx/issues/5610#event-6575071112