Python - 显示所有节点属性Networkx

时间:2018-02-28 17:03:24

标签: python python-3.x networkx

如何显示节点属性(尤其是节点名称)。 这是我到目前为止所做的:

import networkx as nx

g = nx.DiGraph()
g.add_node('home')
g.node['home']['value'] = 10

我想要像

这样的东西
if node_name == 'home' and node[node_name]['value'] == 'somewhere':
    DoSomethingCool()

另外,有没有办法在使用'get_predecessors'或'get_successors'等函数时访问节点数据?

对此的任何帮助将不胜感激。 提前致谢。

1 个答案:

答案 0 :(得分:1)

节点属性存储在dict中。您可以使用标准词典操作轻松访问它们:

import networkx as nx

g = nx.DiGraph()
g.add_node('home')
g.node['home']['value'] = 10

for k,v in g.nodes(data=True):
    print(k,v['value'])

输出:

('home', 10)

我无法回答你问题的第二部分(get_predecessors或get_successors),因为这些函数不属于networkx库。