如何从具有不同__init__输入的多个类继承?

时间:2015-10-19 21:58:01

标签: python inheritance

我希望继承两个对__init__方法有不同输入的不同类。我如何正确地从他们那里继承?

以下是我想要完成的一个简单示例:

class a:
    def __init__(self):
        print("Hello")


class b(a):
    def __init__(self):
        super().__init__()
        print("World")


class c:
    def __init__(self, text):
        print(text)


class d(a, c):
    def __init__(self):
        super().__init__('Kronos')  # <-- This breaks (and understandably so)

虽然类似于多重继承的许多其他问题(即How does Python's super() work with multiple inheritance?),但我正在寻找如何从具有不同输入的多个类继承到__init__

1 个答案:

答案 0 :(得分:3)

我相信你可以像下面这样做

class d(a,c):
   def__init__(self,text):
       a.__init__(self)
       c.__init__(self,text)