python中的替换函数_python:替换模块类中的函数
我試圖替換類中定義的函數,以便在不更改實際代碼的情況下修改其函數(如內部工作)。
我以前從來沒有這樣做過,因此在更換它時遇到一些問題。
更改代碼會讓我訪問python庫中的包,這不是一個很好的選擇。
例如,如果模塊名為testmod
class testMOD(object):
def testFunc(self, variable):
var = variable
self.something = var + 12
然后我將導入testmod,定義一個類(mytest=testmod()),并訪問類testfunc中定義的函數,并將其更改為已經定義的函數。
例如,
from somemodule import testMOD
mytest = testMOD()
def alternativeFunc(self, variable):
var = variable
self.something = var + 1.2
#problem here
mytest.testFunc = alternativeFunc
但是,它沒有給出任何語法錯誤,問題是被替換的函數認為“self”是函數的另一個變量,并且說它需要“variable”變量的另一個參數(我想這不是一個好名字)。
我想做的是使替換函數與被替換函數完全相同,但是需要額外的代碼或一些小的修改。然而,“自我”在課堂上并沒有發揮應有的作用。
是否有一種方法可以正確實現定義的函數來替換導入類的函數?
總結
以上是生活随笔為你收集整理的python中的替换函数_python:替换模块类中的函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java RandomAccessFil
- 下一篇: python 示例_在Python中带有