Python:多继承时的继承顺序

当一个类继承了多个类时,继承顺序:

1.示例:

class A(object):#python2中的新式类,等同与python3中的class A:
    def say(self):
        print('A')


class B(A):
    # pass
    def say(self):
        print('B')


class C(A):
    pass
    # def say(self):
    #     print('c')

class D(C, B):
    pass
d=D()
d.say()   
print(D.mro())   #查看继承顺序
# [<class '__main__.D'>, <class '__main__.C'>, <class '__main__.B'>, <class '__main__.A'>, <class 'object'>]   #广度优先
#[<class '__main__.D'>, <class '__main__.C'>, <class '__main__.A'>, <class '__main__.B'>, <class 'object'>] 深度优先
#python 2 中深度优先
#python3或python2的新式类中广度优先

 

转载于:https://www.cnblogs.com/hancece/p/11158287.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值