python中的mro是什么?

1、概念

方法解析顺序(Method Resolution Order, MRO)列表,它代表了类继承的顺序

2、运行分析

先执行C的构造器函数。执行print('enter C')之后,开始执行super(c)(#简写了就),这个super执行后会返回下一个执行顺序的函数 也就是A , 所以跟着执行print(A),然后执行super(A),然后返回下一个执行顺序就是B, 所以执行print(B),再是super(B),依次类推。

3、使用原则

mro采用C3 线性化算法,遵循一下规则:

子类永远在父类前面

如果有多个父类,会根据它们在列表中的顺序被检查

如果对下一个类存在两个合法的选择,选择第一个父类

以上就是python中mro的介绍,希望能对大家有所帮助。更多Python学习指路:Python基础教程

发表回复