Monkey Patching en Python (comportamiento dinámico)

En Python, el término parche de mono se refiere a modificaciones dinámicas (o en tiempo de ejecución) de una clase o módulo. En Python, podemos cambiar el comportamiento del código en tiempo de ejecución.

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

Usamos el módulo anterior (monk) en el código siguiente y cambiamos el comportamiento de func() en tiempo de ejecución asignando un valor diferente.

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()

Ejemplos:

Output :monkey_f() is being called

Publicación traducida automáticamente

Artículo escrito por ravindra prajapati y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *