在Python in a Nutshell(第2版)一书中有一个使用的例子

旧样式类,用于演示如何以经典分辨率顺序解析方法

它与新订单有何不同.

我通过重写新样式的示例尝试了相同的示例,但结果与使用旧样式类获得的结果没有什么不同.我用来运行该示例的python版本是2.5.2.以下是示例:

class Base1(object):

def amethod(self): print "Base1"

class Base2(Base1):

pass

class Base3(object):

def amethod(self): print "Base3"

class Derived(Base2,Base3):

pass

instance = Derived()

instance.amethod()

print Derived.__mro__

调用instance.amethod()打印Base1,但根据我对MRO的理解,新类型的输出应该是Base3.调用Derived .__ mro__打印:

(< class'__main __.派生'>,< class'__ main __.Base2'>,< class'__main __.Base1'>,< class'__main __.Base3'>,< type'对象“&GT)

我不确定我对新样式类的MRO的理解是不正确的还是我做了一个我无法察觉的愚蠢错误.请帮助我更好地了解MRO.

python类中方法的执行顺序-python – 新式类中的方法解析顺序(MRO)?相关推荐

  1. python中的__new__与__init__,新式类和经典类(2.x)

    在python2.x中,从object继承得来的类称为新式类(如class A(object))不从object继承得来的类称为经典类(如class A()) 新式类跟经典类的差别主要是以下几点: 1 ...

  2. python异步调用shell_Jenkins pipeline中优雅的执行shell/python/groovy脚本

    背景 单纯的声明或者脚本式的流水线语法,能力非常有限,只能搭建起整体运行框架.具体每个step的实现细节,多是使用脚本进行的. 鉴于groovy 与 pipeline语法的不稳定性,我的原则是,pyt ...

  3. python循环输出一句话_执行下列 Python语句后的输出结果是( ),循环执行了 1 次。i=-1;while(i0): i *=iprint(i)_学小易找答案...

    [判断题]我们应该找到一种有益于健康的好方法,那么这种办法一定就是体育锻炼,我们应该将它悄悄带入我们的生活. [单选题]形成阳极效应的原因是 [单选题]有以下程序#include void fun(c ...

  4. 使用meterpreter让没有安装python解释器的肉鸡设备执行任意python程序

    目标设备不需安装python解释器就能让其执行python程序 # 需要在与目标meterpreter的session中加载python模块 meterpreter > load python ...

  5. hbase 导入oracle,hue中使用oozie执行sqoop job将oracle中的数据增量导入hbase

    在cdh hue中使用oozie执行sqoop job时遇到下面的问题. sqoop命令 job --meta-connect jdbc:hsqldb:hsql://bigdata02:16000/s ...

  6. python怎么换行输入而不执行_关于在IDLE中怎么换行继续敲写代码而不执行语句...

    查看: 44535|回复: 29 [已解决]关于在IDLE中怎么换行继续敲写代码而不执行语句 电梯直达 发表于 2016-9-30 10:05:49 | 只看该作者 |倒序浏览 |阅读模式 马上注册, ...

  7. python可以采用交互式的()执行方式,Python语句既可以采用交互式的____执行方式,又可以采用____执行方式。...

    Python语句既可以采用交互式的____执行方式,又可以采用____执行方式. 答:命令 程序; 下列选项中,可控制浏览器实现"前进"功能的是() 答:history.forwa ...

  8. Matlab中去除exe执行时文件的DOS窗口的方法

    转自:http://www.matlabsky.com/thread-547-1-1.html   方法1 在command window中输入如下命令: cd(prefdir) edit compo ...

  9. aop判断方法是否执行成功_判断图中是否有环的三种方法

    0.什么是环? 在图论中,环(英语:cycle)是一条只有第一个和最后一个顶点重复的非空路径. 在有向图中,一个结点经过两种路线到达另一个结点,未必形成环. 1.拓扑排序 1.1.无向图 使用拓扑排序 ...

  10. @postconstruct注解方法没有执行_被标记为事务的方法互相调用的坑(下)

    上一节,主要分析了 被标记为事务的方法互相调用,事务失效的原因,思考比较多,这一节主要说说解决方案,思考会少一些. 解决方案的核心: 通过代理对象去调用方法 1.把方法放到不同的类: 如果想学习Jav ...

最新文章

  1. 资深程序员感叹:表妹成绩好却无奈辍学开理发店,月入6万,上大学没用!网友:那是你没用!...
  2. windows 2003几个优化技巧
  3. 祭奠IT男孩大学的生活
  4. CV:基于Keras利用训练好的hdf5模型进行目标检测实现输出模型中的脸部表情或性别的gradcam(可视化)
  5. Go 语言 2019 调查报告发布(内含 Go 语言图谱下载)
  6. 记事本 换行符_30年后终更新!新一代Win10记事本详细体验
  7. 如何零基础入门FPGA?这篇文章让你吃透!
  8. linux-pcap 抓包程序框架
  9. I - Destroy Walls (HDU - 6187)
  10. 如何使用pywinauto实现一个股票自动交易系统?
  11. 系统集成项目管理工程师各种口诀技巧分享(1)
  12. 计算机图形学学习笔记(5.1)几何造型与样条
  13. ByteDance字节跳动张一鸣:如何阅读、如何了解自己、如何与人沟通沟通、如何安排时间、如何正确的看待别人意见、如何激励自己、如何写作、如何坚持锻炼身体、如何耐心?...
  14. Wireshark 抓取 iphone 测试机的数据包
  15. matlab求解振动学问题,振动力学基础与MATLAB应用
  16. 文件上传漏洞-原理篇
  17. Flutter Bloc构建轻量级MVVM
  18. c语言 指针 越界,关于指针错误使用带来的问题――数组越界
  19. 使用多个磁盘分区创建逻辑卷
  20. 通过Dialer拨号盘输暗码启动某个apk

热门文章

  1. 机器学习过拟合---范数
  2. webdriver --API--(java版) the second part
  3. c#中反射技术在Unity中的运用
  4. 像诗一样的 Javascript 代码(转)
  5. 存储过程—导出table数据为inser sqlt语句
  6. 一个关于异步的纠结问题
  7. 数据结构C#版笔记--树与二叉树
  8. 用python绘制柱状图标题-Python数据可视化:5种绘制柱状图表的方法(附源码)...
  9. python资料库-Python对接六大主流数据库(只需三步)
  10. python入门编程软件免费-Python编程干货免费领取!!!