定义元类时,是否有任何理由选择__new__而不是__init__?
发布于 2021-01-29 15:09:05
我一直在设置元类,如下所示:
class SomeMetaClass(type):
def __new__(cls, name, bases, dict):
#do stuff here
但是我只是遇到了这样定义的元类:
class SomeMetaClass(type):
def __init__(self, name, bases, dict):
#do stuff here
有什么理由比另一个更喜欢吗?
更新
:请记住,我在询问有关在类中使用__new__
和__init__
的问题。我已经在另一堂课中了解了它们之间的区别。但是在元类中,我不能__new__
用来实现缓存,因为__new__
仅在元类中创建类时才调用它。
关注者
0
被浏览
83
1 个回答