Python中的Monkey Patching (猴子补丁)

在Python语言中,monkey patch 指的是对于一个类或者模块所进行的动态修改。在Python语言中,我们其实可以在运行时修改代码的行为。

# monk.py 
class A: 
	def func(self): 
		print "func() is being called"

我们会在下面的代码中使用上述定义的模块,并在通过在运行时指定不同的值来修改函数func()的行为。

import monk 
def monkey_f(self): 
	print "monkey_f() is being called"

# replacing address of "func" with "monkey_f" 
monk.A.func = monkey_f 
obj = monk.A() 

# calling function "func" whose address got replaced 
# with function "monkey_f()" 
obj.func() 

结果如下:

Output :monkey_f() is being called

原文链接


以上就是本文的全部内容,如果您喜欢这篇文章,欢迎将它分享给朋友们。

感谢您的阅读,祝您生活愉快!

作者:小美哥
2019-03-29

你可能感兴趣的:(Python)