python中面向对象的mro函数与C3算法

· Special

class k(object):
    pass

class g(object):
    pass

class h(object):
    pass

class m(object):
    pass

class n(object):
    pass

class d(g,h):
    pass

class e(m):
    pass

class f(m,n):
    pass

class b(d,e):
    pass

class c(e,f):
    pass

class p(object):
    pass

class a(b,c,p):
    pass


#mro(A) =[A]+merge(mro(B),mro(C),mro(P),[B,C,P])
#mro(B) =[B]+merge(mro(D),merge(E),[D,E])
#mro(B) =[B]+merge([DGHK],[EM],[D,E]) #mro(B) [BDGHKEM]

#mro(D) =[D]+merge([G],[H,K],[G,H])
#mro(D) =[D]+merge([],[H,K],[H]) #[DGHK]
# mro(G) = [G]
# mro(H) = [H,K]

#mro(E) = [EM]


#mro(C) = [C] + merge(mro(E),mro(F),[E,F])
#mro(C) = [C] + merge([EM],[FMN],[E,F]) -- [C] + merge([],[N],[]) --[C,E,F,M,N]
#mro(E) = [EM]
#mro(F) = [FMN]

#mro(p) = [P]


#mro(A) =[A]+merge([BDGHKEM],[C,E,F,M,N],[P]],[B,C,P])
#mro(A) =[A]+merge([],[N],[P]],[P])
#[A,B,D,G,H,K,C,E,F,M,N,P]+object


评论

行为验证™ 安全组件加载中...