栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

“ mro()”有什么作用?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

“ mro()”有什么作用?

跟着…:

>>> class A(object): pass... >>> A.__mro__(<class '__main__.A'>, <type 'object'>)>>> class B(A): pass... >>> B.__mro__(<class '__main__.B'>, <class '__main__.A'>, <type 'object'>)>>> class C(A): pass... >>> C.__mro__(<class '__main__.C'>, <class '__main__.A'>, <type 'object'>)>>>

只要我们具有单一继承,

__mro__
它就是以下子类的元组:类,其基础,其基础的基础,依此类推
object
(当然,仅适用于新型类)。

现在,具有 多重 继承…:

>>> class D(B, C): pass... >>> D.__mro__(<class '__main__.D'>, <class '__main__.B'>, <class '__main__.C'>, <class '__main__.A'>, <type 'object'>)

…您还可以确保,在中

__mro__
,没有类被重复,并且没有类在其祖先之后出现,除了首先进入相同多重继承级别的类(如本例中的B和C)之外,
__mro__
左到右。

从类的实例(而不是方法)获得的每个属性在概念上都会沿进行查找

__mro__
,因此,如果祖先中有多个类定义了该名称,则可以告诉您在哪里可以找到该属性-
在第一个类中在
__mro__
定义该名称。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/625517.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号