小编mik*_*nio的帖子

类/类的类型,使用元类创建

class Meta(type):
    def __new__(cls, name, bases, dct):
        new_class = type(name, bases, dct)
        new_class.attr = 100  # add some to class
        return new_class


class WithAttr(metaclass=Meta):
    pass


print(type(WithAttr))
# <class 'type'>

Run Code Online (Sandbox Code Playgroud)

为什么它打印<class 'type'>,但不<class '__main__.Meta'> 打印我对吗,类 WithAttr 是 Meta 的实例?

python oop metaclass python-3.x

3
推荐指数
1
解决办法
61
查看次数

标签 统计

metaclass ×1

oop ×1

python ×1

python-3.x ×1