2016-06-03 1 views

답변

4

Meta -class는 type의 하위 클래스입니다. 그래서 메타 클래스의 유형을 생성하는 메타 클래스 호출된다.

cls = Meta("Test", (Base,), {"a": 1, ...}) 
0

당신은 Meta (일명 type.__class__.__new__(Meta, "Test", (Base,), {"__metaclass__": Meta, "a": 1})를 호출하여 Test 클래스를 만들어야을

이 가능 __metaclass__와 사전이있는 경우, 당신은 사용할 수 있습니다 다음 코드 :

members = {"__metaclass__": Meta, "a": 1, ...} 
metaclass = members.pop('__metaclass__', type) 
cls = metaclass("Test", (Base,), members) 
관련 문제