python 多继承优先级__mro__

2022/4/20 17:12:32

本文主要是介绍python 多继承优先级__mro__,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

如果类C 继承自类A类B,且AB中都有函数f

则调用c.f时根据继承的先后顺序确定调用哪个类中的f

class A( ):
    def f(self):
        print("A卖茶叶蛋...")
class B( ):
    def f(self):
        print("B卖茶叶蛋...")
class C( B,A):
    def __init__(self):
        self.kongfu = '[阿松大]'
c = C()
c.f() #调用A中的,因为class C( A,B):A在B前

print(C.__mro__)#使用mro可获得多继承优先级

 

  • Python中针对  提供了一个内置属性 __mro__ 可以查看 方法 搜索顺序

  • MRO 是 method resolution order, 主要用于在多继承时判断 方法 属性的 调用顺序



这篇关于python 多继承优先级__mro__的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程