networkx: «супер» объект не имеет атрибута «узел» - PullRequest
0 голосов
/ 15 ноября 2011

Я пытаюсь расширить класс из сети x.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[], почему?

1 Ответ

0 голосов
/ 15 ноября 2011

Достаточно просто, потому что node[] не существует. Вместо этого nodes() возвращает массив, который можно проиндексировать с помощью []. Код для этого может выглядеть примерно так: self.b.nodes()[self.r].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...