开发者社区> 问答> 正文

python模块打补丁?

python模块打补丁?

展开
收起
天枢2020 2020-03-13 09:56:41 982 0
1 条回答
写回答
取消 提交回答
  • 代码改变世界,我们改变代码

    先自定义两个模块,然后,我们调用模块时,用打补丁方式,改写mod_1.py模块。为mod_2.py内容;其实这就相当于,在不改动mod_1.py模块的前提下,打上补丁。

    写这个主要是gevent协程的时候,用到的monkey.patch_all()补丁,其实原理就是这样。

    mod_1.py image.png

    mod_2.py image.png

    调用时实现补丁。 image.png

    结果输出: mod2_function

    从结果可以看出,我们已经把mod_1.py模块,以补丁的形势,替换到了mod_1.py中。

    其实严格的说,不能算是打补丁,因为这里完全的把mod_1.py模块的内容替换成了mod_2.py。

    这也是在不改变系统原来的代码或内置函数的情况下,来替成我们的代码。注意,这是替换运行时的模块内容。

    2020-03-13 09:58:56
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载