gpt4 book ai didi

python-3.x - Networkx 邻居集不打印

转载 作者:行者123 更新时间:2023-12-04 07:10:14 26 4
gpt4 key购买 nike

我的 networkx 代码有点问题。
我试图从图中的一个节点中找到所有邻居,但是....

neighbor = Graph.neighbors(element)
print(neighbor)
输出:
<dict_keyiterator object at 0x00764BA0>
而不是我应该得到的所有邻居......我的一个使用旧版本 networkx 的 friend 没有收到此错误,他的代码完全相同并且运行良好。

任何人都可以帮助我吗?降级我的 networkx 不是一种选择。

编辑:
这是我的完整代码
Graph = nx.read_graphml('macbethcorrected.graphml')    
actors = nx.nodes(Graph)

for actor in actors:
degree = Graph.degree(actor)
neighbor = Graph.neighbors(actor)
print("{}, {}, {}".format(actor, neighbor, degree))
这是我正在使用的图表:
http://politicalmashup.nl/new/uploads/2013/09/macbethcorrected.graphml

最佳答案

从 networkx 2.0 开始,Graph.neighbors(element)返回一个迭代器而不是一个列表。

要获取列表,只需申请 list

list(Graph.neighbors(element))

或使用列表理解:
neighbors = [n for n in Graph.neighbors(element)]

第一种方法(首先由 Joel 提到)是推荐的方法,因为它更快。

引用: https://networkx.github.io/documentation/stable/reference/classes/generated/networkx.Graph.neighbors.html

关于python-3.x - Networkx 邻居集不打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47161158/

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