Open In App

Monkey Patching in Python (Dynamic Behavior)

Last Updated : 04 Dec, 2020
Comments
Improve
Suggest changes
Like Article
Like
Report
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. Python3 1==
# 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. Python3 1==
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()
Examples:
Output :monkey_f() is being called

Next Article
Article Tags :
Practice Tags :

Similar Reads