10
로 정의 된 클래스의 컬렉션이 없습니다형식 오류 : 메타 클래스 기지를 호출 할 때 오류가 새로운 스타일의 클래스는 고전 기지
TypeError: Error when calling the metaclass bases
a new-style class can't have only classic bases
:
실행
class A():
@staticmethod
def call():
print('a')
class C(type):
def __repr__(self):
return 'somename'
class B(A):
__metaclass__ = C
@staticmethod
def call():
print('b')
def boundcall(self):
print('bound')
이 오류를 제공합니다
나는 내 코드에서 B의 알려진 문자열 표현을 갖기 위해 메타 클래스 (나는 생각한다)가 필요하다. 그 이유는 그 점 옆에 있지만 향후 업데이트에 크게 도움이 될 것입니다.
그래서 B의 메타 클래스로 C가 필요하고 B가 A의 서브 클래스가 될 것이라고 가정하면 누군가가 나에게 무엇이 잘못 될지 알려주고 오류를 제거하기 위해 내가하는 일을 어떻게 바꿀 수 있습니까?