0

我尝试从 networkx.DiGraph 扩展一个类

import networkx as nx
class branch(nx.DiGraph):
    def __init__(self,g,raiz):
        self.b=super(branch,self)
        self.b.__init__(g)
        self.r = raiz
    def strong(self):
        print self.b.nodes(),self.b.node[self.r]
        if self.b.node[self.r]['w']>0:                                                                                  
            return 1
        else:
            return 0

如果我执行我得到

[1, 'r']
...
AttributeError: 'super' object has no attribute 'node'

可以用.nodes()但是不行.node[],为什么?

4

1 回答 1

0

很简单,因为node[]不存在。相反,nodes()返回一个可以用 索引的数组[]。此代码可能类似于self.b.nodes()[self.r].

于 2011-11-15T17:04:02.217 回答