猴子修补python代码的实用函数

python-monkey-business的Python项目详细描述


关于

python monkey business是一个包,它为 猴子在运行时修补python函数。

安装

使用pip:

pip install python-monkey-business

或者,从源安装:

pip install -e git+https://github.com/theatlantic/python-monkey-business.git#egg=python-monkey-business

如果源已签出,请使用设置工具:

python setup.py develop

用法

使用python monkey business在运行时交换类或模块中的函数:

importmonkeybizfromfoomoduleimportFooClassimportbarmodule# This replaces FooClass.bar with our method@monkeybiz.patch(FooClass)defbar(original_fn,*args,**kwargs):print"Patched!"returnoriginal_fn(*args,**kwargs)# This replaces barmodule.baz with our function@monkeybiz.patch(barmodule)defbaz(original_fn,*args,**kwargs):#...

monkeybiz.patch的第一个参数可以是模块、类, 或者模块和/或类的列表。decorator还接受可选的 nameavoid_doublewrap关键字参数。如果省略name, 正在修补的函数的名称将是正在修补的函数的名称 装饰。如果avoid_doublewrap为true(默认值),则函数和 使用此函数只能修补一次方法。

使用monkeybiz.unpatch()将猴子修补的函数还原为其原始函数。

许可证

此代码是根据Simplified BSD License授权的。查看 LICENSE根目录下的文件,用于获取完整的许可证和 版权信息。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java无法启动应用程序:JNLP错误   java根据用户输入在PreparedStatement中使用setTime()或setNull()   java EJB与同步   java以object为键通过hashmap进行搜索   java中的模10^9+7   针对包含其他对象的对象的java OOP最佳实践   如何将字符串作为HTML代码从Java文件读取到JSP页面?   java我的POM怎么了?“解析表达式..检测到递归表达式循环”   用于Hbase的Mapreduce的java NoSuchMethodError   JAVAlang.SecurityException:权限拒绝:启动意图{act=安卓.Intent.action.MAIN cat=[安卓.Intent.category.LAUNCHER]   数组初始化谜语Java   通过arraylist搜索时的java句柄关联