How can I hook a function in a python module?

2019-10-19 19:33发布

所以我有一个包安装在它的站点包文件夹,我的虚拟环境。 在该包存在了一堆的功能模块,我想改变这些功能一个不沾包代码,所以我想使该模块的钩子,然后更改/覆盖功能,因此它在路上的表现我想要。

我不知道这是在python甚至更多钞票(我是新来的语言)

例:

我有一个名为their_package在我的站点包文件夹包,里面我有一个名为whatever.py用下面的代码模块:

import sys
import os

def this_is_a_function(parameter):
    //whatever logic in here
    return result

我要的是勾whatever.py模块,所以我可以重新定义this_is_a_function有diferent逻辑。 这是更多钞票? 我将不胜感激了很多代码示例!

先感谢您!:)

Answer 1:

你可以重新定义你的函数有:

import whatever

def this_is_a_function(parameter):
    pass

whatever.this_is_a_function = this_is_a_function


文章来源: How can I hook a function in a python module?