如何让一个公共(public)子类初始化它继承自的所有父类?
class Mom(object):
def __init__(self):
print("Mom")
class Dad(object):
def __init__(self):
print("Dad")
class Child(Mom, Dad):
def __init__(self):
super(Child, self).__init__()
c = Child() #only prints Mom
最佳答案
它们缺少 Mom
和 Dad
类中的 super()
调用,这是合作子类化工作所必需的。
class Mom(object):
def __init__(self):
super(Mom, self).__init__()
print("Mom")
class Dad(object):
def __init__(self):
super(Dad, self).__init__()
print("Dad")
class Child(Dad, Mom):
def __init__(self):
super(Child, self).__init__()
c = Child() # Mom, Dad
关于Python多重继承,从公共(public)子类初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42229222/