首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python数据结构,TypeError

Python数据结构,TypeError
EN

Stack Overflow用户
提问于 2019-11-04 20:02:45
回答 1查看 79关注 0票数 2

编写代码是为了计算树中的节点数。但是,我得到了一个简单的类型错误,它不断地引用我的TreeNode类。我检查了拼写和排字,但仍然找不到错误。请帮帮忙

这是错误

代码语言:javascript
运行
复制
    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

代码语言:javascript
运行
复制
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
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-04 20:06:15

t1.Root()可能应该是t1.Root,因为您的根是一个TreeNode对象,而不是查找根的函数。

在访问node.children()时,您可能会碰到类似的墙。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58700292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档