相关疑难解决方法(0)

5409
推荐指数
22
解决办法
75万
查看次数

python中类型和类型.__ new__有什么区别?

我正在写一个元类,不小心这样做:

class MetaCls(type):
    def __new__(cls, name, bases, dict):
        return type(name, bases, dict)
Run Code Online (Sandbox Code Playgroud)

......而不是像这样:

class MetaCls(type):
    def __new__(cls, name, bases, dict):
        return type.__new__(cls, name, bases, dict)
Run Code Online (Sandbox Code Playgroud)

这两个元类之间究竟有什么区别?更具体地说,导致第一个不能正常工作的原因(某些类没有被元类调用)?

python types metaclass new-operator

15
推荐指数
5
解决办法
5763
查看次数

标签 统计

metaclass ×2

python ×2

new-operator ×1

oop ×1

python-datamodel ×1

types ×1