Python 多继承中类变量的作用是什么

Python多继承中类变量的作用是什么?

在Python中,一个类可以从多个基类中继承,这被称为多重继承。

在多重继承中,所有基类的特征都被继承到派生类中。多重继承的语法类似于单一继承。

class Super1:
    pass
class Super2:
    pass
class MultiDerived(Super1, Super2):
   pass

在多重继承的情况下,任何指定的属性首先在当前类中搜索。如果没有找到,则继续向父类进行深度优先搜索,从左到右,而不搜索相同的类两次。

因此,在上面的MultiDerived类的示例中,搜索顺序是[MultiDerived,Super1,Super2,object]。这个顺序也被称为MultiDerived类的线性化,用于查找此顺序的规则集称为方法解析顺序(MRO)。

MRO确保类始终出现在其父类之前,在有多个父类的情况下,顺序与基类元组相同。

类的MRO可以视为mro属性或mro()方法。前者返回元组,而后者返回列表。

>>> MultiDerived.mro()
[<class '__main__.MultiDerived'>,
 <class '__main__.Super1'>,
 <class '__main__.Super2'>,
 <class 'object'>]

更多Python相关文章,请阅读:Python 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程