我做了很多搜索,但是我找不到从模块扩展类的方法。
我有一个已安装的模块,包含3个文件init,config,core&错误。所有类方法都在“core”中定义,但变量在“config”中定义。
我需要为变量添加另一个方法和一些新值,但我无法使它工作。
我尝试过这样的事情:
class newFunctions(oldClass):
old_variable = {'newkey':'value'}
def __init__(self,original_value):
self.original_value = original value
# now comes my new function:
def new_function(self,newkey):
url = _some_function_from_original_class(newkey)
这种方式不起作用,必须使用原始的源类。我改变了:
url = oldClass._some_function_from_original_class(newkey)
该死...这给我以下错误:
File ".py", line 41, in new_function
response = oldClass._some_function_from_original_class(newkey)
TypeError: unbound method _some_function_from_original_class() must be called with oldClass instance as first argument (got str instance instead)
我认为如果我移动整个_some_function_from_original_class()并在新类中使用相同的名称声明,我会更聪明,更快,但是遇到了与变量相关的其他错误!所以我真的迷路了。
我错过了什么吗?