[<class '__main__.B'>, <class '__main__.A'>, <class 'object'>] (<class '__main__.B'>, <class '__main__.A'>, <class 'object'>) (<class '__main__.B'>, <class '__main__.A'>, <class 'object'>)
推薦+收藏:兩篇不錯的文章:
MRO:Method Resolution Order 方法解析順序,Python支持多繼承,該方法用於解決父類存在同名函數的時存在的二義性問題。
單調性:某一個類繼承的父類滿足從左到右的順序解析(從左到右遞歸地從左到右解析)
獲取解析順序的幾種方法:
import inspect class A: pass class B(A): pass print(B.mro()) print(B.__mro__) print(inspect.getmro(B))
輸出結果:
[<class '__main__.B'>, <class '__main__.A'>, <class 'object'>] (<class '__main__.B'>, <class '__main__.A'>, <class 'object'>) (<class '__main__.B'>, <class '__main__.A'>, <class 'object'>)