我绝对是Python初学者,不了解以下几行的问题。
class Base:
def __init__(self, x):
print("Base")
self.x = x
class A(Base):
def __init__(self):
super(A, self).__init__(1)
print("A")
class B(Base):
def __init__(self):
super(B, self).__init__(2)
print("B")
class C(A, B):
def __init__(self):
super(C, self).__init__()
print("C")
if __name__ == '__main__':
c = C()
我认为超级调用按以下顺序从C init查找:A-B-Base-Base还是我错了?
谢谢您的回答。
答案 0 :(得分:0)
使用以下代码:
class A(Base):
def __init__(self):
super(A, self).__init__() #Remove this 1
print("A")
希望对您有帮助。