Отредактировано
У меня есть 2 класса, унаследованных от ABC
, и третий класс, наследуемый от обоих, каждый в отдельном файле.Пытался предоставить метакласс ABCMeta
последнему классу, чтобы разрешить конфликт метаклассов, но он терпит неудачу с тем же
"TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases"
Почему в этом случае python игнорирует директиву метакласса, и какразрешить это?
файл A:
from abc import ABC, abstractmethod
class A(ABC):
@abstractmethod
def method1(self):
pass
файл B:
from abc import ABC, abstractmethod
class B(ABC):
@abstractmethod
def method2(self):
pass
файл C:
import A
import B
class C(A,B,metaclass=ABCMeta):
def method1(self):
pass
def method2(self):
pass