猴子补丁
作用:随时修改代码
(在函数或类定义完成之后,再去修改函数的实现过程)
""" 类似猴子补丁 在函数定义好之后,再去更改他的行为 """ import types class Valley: def func(self): return "等待宣告" def common(self): return "只有永不遏制的奋斗" if __name__ == '__main__': v = Valley() # 只替换当前实例的方法 v.func = types.MethodType(common, Valley) print(v.func()) # 原方法实现规则不变 v2 = Valley() print(v2.func())
output:
只有永不遏制的奋斗
等待宣告
使用场景:
在接手别人代码的时候,想要对某函数进行修改,但同时又担心会有别处调用此方法,所以可以在自己的代码中在不修改原代码的基础上执行另一套逻辑
但我觉得还是定义个子类,重写原方法的方式达到更改程序行为的目的会更好,今天就是浅浅的了解了一下,后面遇到坑再补充
只有永不遏止的奋斗,才能使青春之花,即便是凋谢,也是壮丽地凋谢
出处:https://www.cnblogs.com/shixiaogu/p/16899924.html
出处:https://www.cnblogs.com/shixiaogu/p/16899924.html