gpt4 book ai didi

python - python变量继承是如何工作的?

转载 作者:太空狗 更新时间:2023-10-30 01:57:51 27 4
gpt4 key购买 nike

我正在尝试一些非常基本的 Python 继承:

class Parent:
def __init__(self):
self.text = 'parent'

def getText(self):
print self.text

class Child1(Parent):
def __init__(self):
self.x = 'x'

class Child2(Parent):
def __init__(self):
self.x = 'x'

if __name__ == "__main__":
parent = Parent()
child1 = Child1()
child2 = Child2()

parent.getText()
child1.getText()
child2.getText()

但我不断得到

Child1 instance has no attribute 'text'

变量是如何传递给 child 的?

最佳答案

您需要手动调用父类的构造函数 - 这里,self.textParent 构造函数中初始化,它永远不会被调用:

class Child1(Parent):
def __init__ (self):
super(Child1, self).__init__ ()
# or Parent.__init__ (self)
self.x = 'x'

关于python - python变量继承是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35776734/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com