无法访问节点属性

时间:2019-03-23 19:43:47

标签: python attributes nodes networkx

g.nodes()似乎显示了属性,但否则我无法访问它们。我在做什么错了?

g = nx.Graph()

g.add_node('a', attr_dict={'k1':5})

g.nodes(data=True)
 [('a', {'k1': 5})]

g['a']
{}

g['a'].keys()
 []

g['a']['k1']

  KeyError     Traceback (most recent call last)
 <ipython-input-62-03c0859d74e1> in <module>()
 ----> 1 g['a']['k1']

 KeyError: 'k1'

ver:1.11


升级到版本:2.2

g = nx.Graph()
g.add_node('b', attr_dict={'k1':5})

g['b']
AtlasView({})

g.nodes['b']
{'attr_dict': {'k1': 5}}

1 个答案:

答案 0 :(得分:0)

对于networkx 2.1或2.2,您可以访问有关特定节点的数据,您必须使用图形的属性节点。例如

g = nx.Graph()

g.add_node('a', attr_dict={'k1':5})

g.nodes(data=True)

print(g.nodes['a'])