我写了一个 python 文件:
class A(object):
def update(self, str):
pass
def say(self, str):
print "I update: " + str
def fun(obj, str):
obj.say(str)
a = A()
import types
setattr(A, "update", types.MethodType(fun, None, A))
a.update("hello")
b = A()
b.update("world?")
它改变了类的行为,对象b也被改变了。但是,我只想更改对象 a。 如何在 python 中更改对象的方法?
最佳答案
这里有一个方法:
a.update = lambda x: fun(a, x)
关于python - 如何在python中更改对象的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12119188/