鱼子酱POI 发表于 2020-2-20 00:38:20

关于父类,子类的问题

请大神解释一下,为什么两者间最后ins.name打印的值不一样?:

class C0:
    name = 'C0'

class C2(C0):
    num = 2

class C1:
    num = 1

class C3:
    name = 'C3'

class C4(C1,C2,C3):
    pass

ins = C4()
print(ins.name) # 打印出C0
print(ins.num) # 打印出1



class C0:
    name = 'C0'

class C2(C0):
    num = 2

class C1(C0):
    num = 1

class C3(C0):
    name = 'C3'

class C4(C1,C2,C3):
    pass

ins = C4()
print(ins.name) # 打印出C3
print(ins.num) # 打印出1

ba21 发表于 2020-2-20 01:05:21

涉及到 新式类、经典类 的搜索顺序,可参考下。
https://www.jianshu.com/p/6f9d99f7ad54

鱼子酱POI 发表于 2020-2-20 01:30:08

ba21 发表于 2020-2-20 01:05
涉及到 新式类、经典类 的搜索顺序,可参考下。
https://www.jianshu.com/p/6f9d99f7ad54

非常感谢
页: [1]
查看完整版本: 关于父类,子类的问题