通常,您可以从该类的实例访问常规类属性/字段。但是,当尝试访问类属性时,会引发 AttributeError。为什么实例看不到类对象的属性?
class Meta(type):
@property
def cls_prop(cls):
return True
class A(metaclass=Meta):
cls_attr = True
A.cls_attr # True
A.cls_prop # True
a = A()
a.cls_attr # True
a.cls_prop # AttributeError: 'A' object has no attribute 'cls_prop'
Run Code Online (Sandbox Code Playgroud)