如何在不接触源代码的情况下修改类方法?
库中有一个类,我不想更改其源代码。
class SomeLibraryClass(object):
def foo(self, a_var):
print self, a_var, "hello world"
现在,我想定义自己的foo
方法,并替换原来的SomeLibraryClass.foo
.
def foo(obj, a_var):
print obj, a_var, "good bye"
SomeLibraryClass.foo = foo //
我应该如何处理self变量?
我怎样才能做到这一点?