Python Tree数据结构,TypeError

时间:2019-11-04 20:02:45

标签: python

编写代码旨在计算树中的节点数。但是,我收到一个简单的类型错误,该错误不断引用我的TreeNode类。我已经检查了拼写和错别字,但仍然找不到错误。请帮助

这是错误

    Traceback (most recent call last):
  File "C:/Users/Eli/.PyCharmCE2019.2/config/scratches/Tree.py", line 30, in <module>
    t1.addChild(t1.Root(),6)
TypeError: 'TreeNode' object is not callable

class TreeNode():
    def __init__(self, data= None, parent = None):
        self.data = data
        self.children = []
        self.parent = parent
class Tree():
    def __init__(self):
        self.Root = None
        self.size = 0
    def __len__(self):
        return self.size
    def root (self):
        return self.Root
    def children (self, node):
        return node.children()
    def addChild (self,parent,data):
        t = TreeNode (data,parent)
        if parent == None:
            self.Root = t
        else:
            parent.children.append(t)
        self.size +=1
    def printTreePreOrder(self,node):
        print(node.data)
        for n in node.children:
            self.printTreePreOrder(n)
if __name__ == "__main__":
    t1 = Tree()
    t1.addChild(None,5)
    t1.addChild(t1.Root(),6)

    cl = t1.children(t1.Root())
    for n in cl:
        t1.addChild(n,3)
        t1.addChild(n,9)
    t1.printTreePr

1 个答案:

答案 0 :(得分:4)

np.asarray(word_vec)应该是t1.Root(),因为您的根是TreeNode对象,而不是用于查找根的函数。

访问t1.Root

时可能会碰到类似的墙