TypeError: Error when calling the metaclass bases Cannot create a consistent method resolution order (MRO) for bases A2, A1 出现原因及其解决办法

原本想测试继承,出现了这个错误:

  源代码

 1 class A1(object):
 2     def fo1(self):
 3         print "i‘m A1"
 4 class A2(object):
 5     def fo1(self):
 6         print "i‘m A2"
 7 class B1(A1,A2):
 8     def bar(self):
 9         print "i‘m B1"
10 class B2(A2,A1):
11     def bar(self):
12         print "i‘m B2"
13 class C(B1,B2):#提示出现错误的地方
14     pass
15 if __name__==‘__main__‘:
16     m=C()
17     print C.__mro__
18     m.bar()
19     m.fo1()

错误行数出现在13行,实际就是构图的时候产生了错误,(根据继承先后广搜构图)

此时构图为

显然不能出现俩A1,因此会出现如上的报错

要B都与A有联系只能是下面这种继承构图才不会出错

即将代码修改为

class A1(object):
    def fo1(self):
        print "i‘m A1"
class A2(object):
    def fo1(self):
        print "i‘m A2"
class B1(A1,A2):
    def bar(self):
        print "i‘m B1"
class B2(A1,A2):
    def bar(self):
        print "i‘m B2"
class C(B1,B2):
    pass
if __name__==‘__main__‘:
    m=C()
    print C.__mro__
    m.bar()
    m.fo1()
时间: 2024-08-01 10:50:30

TypeError: Error when calling the metaclass bases Cannot create a consistent method resolution order (MRO) for bases A2, A1 出现原因及其解决办法的相关文章

[转]"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法

[转]"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法 http://blog.csdn.net/sahusoft/article/details/7388617 一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如: tmux: error while loading shared libraries: libevent-1.4.so.2: cannot open shared obje

js报TypeError $(...) is null错误,jquery失效的原因及解决办法

最近在工作中发现个问题,原本好好的网页,写了一些自己的jquery代 码之后,竟然总是不起作用,无论写的多么简单,都不起作用,似乎jquery失效了一般,在火狐下调试看了下,页面报TypeError $(...) is null这种错误,找了半天原因最后发现竟是页面中加载的一个插件给捣的鬼,是它将jquery的$方法给覆盖了.对于这个问题,现在分享两种解决方法. (1)删冲突插件,jquery作为基础库,当然是没有理由被删了.这个方法最直接了. (2)将jquery的$方法改名,具体改名方法如下

启动安卓模拟器报错 emulator: ERROR: x86_64 emulation currently requires hardware acceleration! CPU acceleration status:HAXM must be updated(version 1.1.1<6.0.1) 解决办法

启动安卓模拟器报错 emulator: ERROR: x86_64 emulation currently requires hardware acceleration!  CPU acceleration status:HAXM must be updated(version 1.1.1<6.0.1) 解决办法: 在android sdk 安装目录下找到 \Android\sdk\extras\intel\Hardware_Accelerated_Execution_Manager 双击int

百度地图API 与 jquery 同时使用时报 TypeError $(...) is null错误 失效的原因及解决办法

在引用百度地图API后,发现jquery 根据id 找不到 form.但是对于别的控件没有问题. 在排除了 html加载的问题后. 上网查找 发现以下解决办法: 原因应该是有冲突的插件. 解决办法将 $符号改为jQuery 引用: http://www.phpernote.com/jquery/851.html 最近在工作中发现个问题,原本好好的网页,写了一些自己的jquery代码之后,竟然总是不起作用,无论写的多么简单,都不起作用,似乎 jquery失效了一般,在火狐下调试看了下,页面报Typ

error while loading shared libraries: xxx.so.x&quot;错误的原因和解决办法

一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如: tmux: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory 原因一般有两个, 一个是操作系统里确实没有包含该共享库(lib*.so.*文件)或者共享库版本不对, 遇到这种情况那就去网上下载并安装上即可. 另外一个原因就是已经安装了该共

error while loading shared libraries: xxx.so.x&quot; 错误的原因和解决办法

今天在执行一个protobuf程序时,提示error while loading shared libraries: libprotobuf.so.8: cannot open shared object file: No such file or directory错误.google了一下,是由于找不到lib这个文件. 解决办法: 一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如: tmux: error while loading shared librari

### The error occurred while setting parameters, MyBatis框架使用报错原因及解决办法

### Error querying database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delete,create_time,update_timeFROM tb_user WH

TypeError: Error #1006: value 不是函数。

1.错误原因 TypeError: Error #1006: value 不是函数. at BasicChart/dataFunc()[E:\Flash Builder\Map\src\BasicChart.mxml:68] at mx.charts.chartClasses::Series/cacheDefaultValues()[E:\dev\4.0.0\frameworks\projects\datavisualization\src\mx\charts\chartClasses\Seri

TypeError:Error #1009

1.错误描述 TypeError:Error #1009:无法访问空对象引用的属性和方法 2.错误原因 3.解决办法