搜尋

首頁  >  問答  >  主體

Python 多繼承中的 super函數?

class A:
    def __init__(self):
        print('A')
        
class B():
    def __init__(self):
        print('B')

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

obj = C()

用super方法可以呼叫父類別的方法,但是在多重繼承中,要如何使用呢?
如上程式碼class C會呼叫class A__init__方法,但如果我要同時呼叫class Aclass B的'__init__'方法該如何寫?或只呼叫 class B__init__方法?

當然,使用 未綁定方法這種行式是可以實作。

怪我咯怪我咯2765 天前584

全部回覆(2)我來回復

  • phpcn_u1582

    phpcn_u15822017-05-18 10:52:04

    顯式呼叫即可,自由選擇。
    A.__init__(self)A.__init__(self)
    B.__init__(self)B.__init__(self)

    回覆
    0
  • 迷茫

    迷茫2017-05-18 10:52:04

    python-超級

    回覆
    0
  • 取消回覆