假设我想通过像这样将一些公式应用于 something.action 来临时替换类的某些操作,
something.action = apply(something.action)
稍后,我想通过执行类似这样的操作将原始操作方法应用回实例 something
something.action = ...
我应该如何做到这一点?
请您参考如下方法:
我觉得你可以简单的保存原来的函数然后写
tmp = something.action
something.action = apply(something.action)
然后,稍后
something.action = tmp
例子:
class mytest:
def action(self):
print 'Original'
a = mytest()
a.action()
tmp = a.action
def apply(f):
print 'Not the ',
return f
a.action = apply(a.action)
a.action()
a.action = tmp
a.action()
给出
$ python test.py
Original
Not the Original
Original
