python內置函數super()主要用於類的多繼承中,用來查找並調用父類的方法,所以在單重繼承中用不用 super 都沒關係;但是,使用 super() 是一個好的習慣。一般我們在子類中需要調用父類的方法時纔會這麼用。
下面是一段示例代碼,類C(A)中繼承父類A。執行C的實例化時,流程爲:
1、執行A的實例化,輸出:i am class A0 ---
2、執行C的實例化,輸出:i am class C ---
3、調用類A的_init_(),輸出:i am class A
4、調用類A的A1(),輸出:i am class A1
class A(object):
print('i am class A0')
def __init__(self):
print('i am class A')
def A1(self):
print('i am class A1')
class C(A):
print('i am class C')
def __init__(self):
super(C, self).__init__()
super(C, self).A1()
c = C()
輸出:
i am class A0
-------------
i am class C
-------------
i am class A
---------------------------
i am class A1
---------------------------
更多參考:https://blog.csdn.net/weixin_44207181/article/details/90647890