Python元描述符元编程:如何在类定义之后添加描述符?
问题描述:
如何在类已定义后关联描述符?Python元描述符元编程:如何在类定义之后添加描述符?
在正常情况描述我只是这样做:
class X:
d = Descriptor()
,然后每当Descriptor.__get__(self,obj,kls)
被调用时,第二个参数是X
一个实例和所有快乐和美好。
但是如果X
已经定义,像这样:
class X: pass
如何再添加在事后的描述符(并让它正常工作!)?我所有的尝试都没有得到正确的关联
我这样做因为我有一堆属性,我想以DRY的方式添加,我希望它们是cached_properties(我使用的描述符以记忆它们中的每一个的值)
答
X.d = Descriptor()
这就是你所需要的。
*打额头*谢谢! – prior 2012-03-28 21:25:53