python-3.x - 如何覆盖库类的方法
问题描述
我正在使用 python 库,我必须修改Emitter类的方法。
当我使用该库时,我从Main类创建一个实例,然后它自己调用 Emitter 类;
如何在不更改库的实际代码的情况下更改此方法?
创建 Emitter 类的子类是否有效?
我要补充一点,由于项目限制,如果没有它在一个类中,我就无法编写任何方法/函数。
如果不是因为这个猴子修补程序会奏效。
此外,对于这种方法,我想更改/替换使用 Emitter 对象的字段——我想它是由库中的 Main 或其他类创建的。
有什么办法吗?
代码示例:
from library import Main
class My_class:
def __init__(self):
obj = Main()
obj.someMainmethod()
# that's pretty much how I use the library
解决方案
推荐阅读
- arrays - 无法正确循环数组条件失败-reactjs
- java - 有没有办法在运行时访问和修改 Eclipse 插件的源代码?
- java - 无需遍历所有像素即可替换图像中的颜色
- java - java是否可以在数组中插入算术运算符(+ - / *)?
- laravel - 在新的 laravel 文件中执行“npm run”时出错 - 找不到模块 npm-cli.js
- html - 使用 %userprofile% 的数据源 iMacro
- javascript - 使用 javascript SDK 从 facebook graph api 获取个人资料图片
- kubernetes - Kubernetes 仪表板(Web UI)不工作
- python - 用于迁移学习的 Keras input_tensor 形状
- java - Jsoup getElementsByAttributeValueMatching 不起作用