当父init函数接受不同数量的参数时,如何在python中处理多重继承

时间:2016-08-31 16:44:01

标签: python multiple-inheritance

我有一个继承自其他2个类的类,其中一个类接受一个init参数。如何正确初始化父类?

到目前为止,我有:

class A(object):
    def __init__(self, arg1):
        self.arg1 = arg1

class B(object):
    def  __init__(self):
         pass

class C(A, B):
     def __init__(arg1):
          super(C, self).__init__(arg1)

但由于TypeError没有收到参数,因此抛出B

在上下文中,BC的正确父级,而A是一个混合,项目中的许多类都从中继承了功能。

1 个答案:

答案 0 :(得分:1)

You can call the __init__ of the parent classes manually.

class C(A, B):
     def __init__(arg1):
          A.__init__(self,arg1)
          B.__init__(self)