📜  Python中的猴子补丁(动态行为)

📅  最后修改于: 2022-05-13 01:54:45.143000             🧑  作者: Mango

Python中的猴子补丁(动态行为)

在Python中,术语猴子补丁是指对类或模块的动态(或运行时)修改。在Python中,我们实际上可以在运行时改变代码的行为。

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

我们在下面的代码中使用上面的模块(monk),并通过分配不同的值在运行时改变 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