如何在定义类后关联描述符?
在正常的描述符场景中,我会这样做:
class X:
d = Descriptor()
然后每当调用Descriptor.__get__(self,obj,kls)
时,第二个参数就是X
的一个实例,所有这些都很开心和精彩。
但如果X
已经定义如此:
class X: pass
如何在事后添加描述符(并使其正常运行!)?我所有的尝试都没有与班级正确联系
我正在做这个因为我有一堆我想要以DRY方式添加的属性,我希望它们是cached_properties(我用它来记住每个属性的值)
答案 0 :(得分:3)
X.d = Descriptor()
这就是你所需要的一切。