gpt4 book ai didi

python - NetworkX 文档中的示例出现错误 (all_pairs_shortest_path)

转载 作者:行者123 更新时间:2023-11-30 22:18:40 26 4
gpt4 key购买 nike

我尝试从 NetworkX 包文档中复制并粘贴示例。这是示例:

>>>G = nx.path_graph(5)
>>> path = nx.all_pairs_shortest_path(G)
>>> print(path[0][4])
[0, 1, 2, 3, 4]

不幸的是,我收到以下错误消息,而不是预期的输出:

'generator' object has no attribute '__getitem__'

最佳答案

所以你的错误是由于在Python 2.x中许多用于返回字典的方法现在返回生成器。其中包括all_pairs_shortest_path。您正在使用这个新版本的networkx,但正在查看过时的教程。 因此,您看到的错误消息来自于您有一个生成器 path 并且您正在尝试访问 path[0],这对 Python 来说没有意义。这里最简单的解决方法是简单地遵循 Walter 提供的答案并说

path = dict(nx.all_pairs_shortest_path(G))

一般来说,当使用为 networkx 1.x 编写的代码但您使用的是 2.x 版本时,您应该查阅 migration guide (尽管在你的情况下它不是特别有用)。

关于python - NetworkX 文档中的示例出现错误 (all_pairs_shortest_path),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49309670/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com