python繼承的原理分析
原理分析
1、子類會先于父類被檢查。多個父類會根據(jù)它們在列表中的順序被檢查。
2、如果對下一個類存在兩個合法的選擇,選擇第一個父類。
Python中子類可以同時繼承多個父類,如果繼承了多個父類,那么屬性的查找方式有兩種,分別是:深度優(yōu)先和廣度優(yōu)先。
實例
#-*-coding:utf-8-*-
#@Time:2019/12/2409:30
#@Author:我就是任性-Amo
#@FileName:15.新式類與經(jīng)典類.py
#@Software:PyCharm
#@Blog:
classA(object):
deftest(self):
print('fromA')
classB(A):
deftest(self):
print('fromB')
classC(A):
deftest(self):
print('fromC')
classD(B):
deftest(self):
print('fromD')
classE(C):
deftest(self):
print('fromE')
classF(D,E):
#deftest(self):
#print('fromF')
pass
f1=F()
f1.test()
print(F.__mro__)#只有新式才有這個屬性可以查看線性列表,經(jīng)典類沒有這個屬性
#importinspect#使用inspect模塊中的getmro()方法可以查看python2.x的mro順序
以上就是Python繼承的原理分析,希望對大家有所幫助。更多Python學(xué)習(xí)教程請關(guān)注IT培訓(xùn)機構(gòu):千鋒教育。