我正忙着让一个班级重新创造自己。我试图了解元类属性,但我仍然不是100%清楚。在
目标是: 一个类,它为某个迭代创建自己,然后保存它所创建的一级子级(在下面的示例中,它是自己的孩子). 在
class MyClass(object):
def __init__(self, num):
self.name = num
self.children = []
if num !=0:
cls = self.__new__(self.__class__ )
cls = self.__init__(num-1)
self.children.append(cls)
#Uncomment for Error
#print cls.name
if __name__ == "__main__":
c = MyClass(3)
这是我正在尝试的,但试图打印自身名称返回一个“name”不存在的AttributeError。我认为这是因为我并没有传递属性,但我正在寻找一些最佳实践的澄清,也许还有一个解决方案。在
如果我对某事不清楚,请告诉我以便我能更好地解释!在
不需要自己调用
__new__()
或__init__()
方法;构造函数将自动处理该部分。在怎么样:
相关问题 更多 >
编程相关推荐