python实现父类继承_Python多继承用super调用父类方法?
python的super傳遞:python多重繼承的super調用父類的兄弟類 - 30天嘗試新事情?30daydo.com
如果要調用父類的父類,可以直接用類名(類名需要在mro里面)
# 多重繼承
class A:
def __init__(self):
print('A init')
print(self)
def fun(self):
print('A',self)
class B(A):
def __init__(self):
print('B init')
print(self)
def fun(self):
print('B', self)
class C(B):
def __init__(self):
print('C init')
print(self)
def fun(self):
print('C', self)
class X:
def fun(self):
print('X',self)
class D(C):
def __init__(self):
# super(B, self).__init__() # super(D) -> 指向了C
print('D init')
def fun(self):
C.fun(self)
B.fun(self)
A.fun(self)
X.fun(self)
def main():
d = D()
print(d.__class__.mro())
d.fun()
if __name__ == '__main__':
main()
輸出:
D init
[, , , , ]
C <__main__.d object at>
B <__main__.d object at>
A <__main__.d object at>
X <__main__.d object at>
總結
以上是生活随笔為你收集整理的python实现父类继承_Python多继承用super调用父类方法?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三因素三水平正交表l9_影响多腔导管挤出
- 下一篇: websocket 更新点位 浏览器卡顿