Monkey Patching in Python
Hasan Sajedi
Posted on February 16, 2019
In Python, the term monkey patch refers to dynamic (or run-time) modifications of a class or module. In Python, we can actually change the behavior of code at run-time.
monk.py
class A:
def func(self):
print "func() is being called"
We use above module (monk) in below code and change behavior of func() at run-time by assigning different value.
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
💖 💪 🙅 🚩
Hasan Sajedi
Posted on February 16, 2019
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.