我想在pyTree
node
类中添加一些额外的属性,以实现决策树算法。
对于用户定义的内容,它只有一个data
属性,这也是使用类方法getNode(content)
时搜索的属性。我想在那里存储一个唯一的ID,但也存储树计算的其他属性。
我尝试过各种各样的事情,但是从this post开始,以下应该是这样做的方式:
from pyTree.Tree import Tree
class decTree(Tree):
def __init__(self, val1, val2, data=None, children=None,):
super(decTree, self).__init__(data=None, children=None)
self.val1 = val1
self.val2 = val2
if __name__ == '__main__':
tree = decTree(val1=1.5, val2='string', data='567')
导致以下属性错误:
TypeError: super() takes at least 1 argument (0 given)
任何有关执行此操作或其他事项的建议都会很好。谢谢!
答案 0 :(得分:3)
您在Python 2上使用pyTree
;但该项目仅适用于Python 3。
来自PyPI page:
Python 3中的Python 3
中列表派生的TREE数据结构
super()
在方法中使用时不带参数,that's what the pyTree
project does。这使得代码库与Python 2不兼容。
你正确地扩展了课程;您的代码在与Python 3一起使用时可以正常工作。