NetworkX 教程给出了值选择的关键错误

Ric*_*ich 1 python graph nodes networkx python-2.7

我正在学习 networkX 教程,第 9 页是这样的:

>>> g = nx . Graph ()
>>> g . add_node (1 , name = ‘ Obrian ’)
>>> g . add_nodes_from ([2] , name = ‘ Quintana ’ ])
>>> g [1][ ‘ name ’]
‘ Obrian ’
Run Code Online (Sandbox Code Playgroud)

我在代码中重建:

import networkx as nx

g = nx.Graph() 

g.add_node(1,name='Obrian')
g.add_nodes_from([2],name='Quintana')

print  "Node 1 name: " + g[1]['name']
Run Code Online (Sandbox Code Playgroud)

然而,出于某种原因,这个简单的 5 行脚本无法运行:

Traceback (most recent call last):
  File "NetTest[nx_tut]--[P09].py", line 9, in <module>
    print  "Node 1 name: " + g[1]['name']
KeyError: 'name'
Run Code Online (Sandbox Code Playgroud)

我觉得我错过了一些非常明显的东西。它是什么?

Rya*_*ski 5

您需要显式访问图的节点属性。也就是说,替换g[1]['name']g.node[1]['name']

您可能正在使用过时的教程。