Newbie_XZW 发表于 2020-12-8 11:01:15

大佬们来救火

class A:
    def get_a(self):
      print('a')


class B:
    def __init__(self):
      self.x = 69


class C:
    pass

C.__bases__ += (A,B,)

报错:TypeError: Cannot create a consistent method resolution order (MRO) for bases object, A, B

怎么解决啊?

Newbie_XZW 发表于 2020-12-8 14:17:05

大佬们,快来看看啊{:10_277:}{:10_277:}

聂嘉辉 发表于 2020-12-8 21:11:17

元组是不可更改的。

Newbie_XZW 发表于 2020-12-9 09:00:21

聂嘉辉 发表于 2020-12-8 21:11
元组是不可更改的。

额,我觉得不是这个原因

suchocolate 发表于 2020-12-9 09:16:49

3楼说的没错:class.__bases__
The tuple of base classes of a class object.

lirenbing01 发表于 2020-12-9 10:06:37

class C(A):
    pass

C.__bases__ += (B,)

或者
C = type('C', (B, A,), {})

Newbie_XZW 发表于 2020-12-9 10:09:59

suchocolate 发表于 2020-12-9 09:16
3楼说的没错:class.__bases__
The tuple of base classes of a class object.

应该怎么解决喃?{:10_277:}
页: [1]
查看完整版本: 大佬们来救火