我目前正在攻读python考试,但我还不了解Python 3中的MRO和线性化。
class F: pass
class G: pass
class H: pass
class E(G,H): pass
class D(E,F): pass
class C(E,G): pass
class B(C,H): pass
class A(D,B,E): pass
例如,在一个作业中,有一个问题是,在A类线性化中,E是否可能出现在C之前。
如何判断是否可能?如何能够尽可能简单地描述线性化算法(C3)? 我非常感谢各种解释和资源,因为我很难理解Python中的线性化。
提前多多感谢!
答案 0 :(得分:1)
E类继承自G和H.
G和H类依赖(它们不从任何人继承)。
因为E类不依赖于C类,所以他可以在他之前进行初始化
答案 1 :(得分:1)
file1