您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Monkey在Python的另一个模块中修补类

Monkey在Python的另一个模块中修补类

以下应该工作:

import thirdpartymodule_a
import thirdpartymodule_b

def new_init(self):
    self.a = 43

thirdpartymodule_a.someClass.__init__ = new_init

thirdpartymodule_b.dosomething()

如果要新的init调用旧的init,则将new_init()定义替换为以下内容

old_init = thirdpartymodule_a.someClass.__init__
def new_init(self, *k, **kw):
    old_init(self, *k, **kw)
    self.a = 43
python 2022/1/1 18:42:23 有279人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶