我有这样的类结构:
class A:
def __init__(self):
print("A")
class B:
def __init__(self, x):
print("B")
class C(A,B):
def __init__(self):
super(C, self).__init__() # ???
c=C()
如您所见,A
和B
都是C
的父类。我想在__init__
的C
中调用两个类__init__
。我想将一些参数传递给B的__init__
。有什么办法可以用super
关键字做到这一点?我认为这会起作用:
class C(A,B):
def __init__(self):
A.__init__()
B.__init__(5)
我们应该以这种方式直接调用__init__
,还是对此有更好的解决方案?
您必须将self作为参数提供给父类的__init __()。
class C(A,B):
def __init__(self):
A.__init__(self)
B.__init__(self, 5)