相关疑难解决方法(0)

在python中动态添加@property

我知道我可以通过执行以下操作动态地向对象添加实例方法:

import types
def my_method(self):
    # logic of method
# ...
# instance is some instance of some class
instance.my_method = types.MethodType(my_method, instance)
Run Code Online (Sandbox Code Playgroud)

后来我可以打电话instance.my_method(),自我将被正确绑定,一切正常.

现在,我的问题:如何做同样的事情来获得用@property装饰新方法的行为?

我猜是这样的:

instance.my_method = types.MethodType(my_method, instance)
instance.my_method = property(instance.my_method)
Run Code Online (Sandbox Code Playgroud)

但是,这样做会instance.my_method返回一个属性对象.

python

18
推荐指数
1
解决办法
9355
查看次数

标签 统计

python ×1