为什么以下代码会出错:
class StateMeta:
def __call__(*args, **kwargs):
pass
# end __call__
# end StateMeta
class State(metaclass=StateMeta):
pass
错误:
Traceback (most recent call last):
File "D:/FILE_MGMT_PYTHON/tempHSHDFHS).py", line 7, in <module>
class State(metaclass=StateMeta):
TypeError: StateMeta() takes no arguments
您忘了让元类继承自type
,写StateMeta(type)
而不是StateMeta
。