class MyClass:
def __init__(self, i):
self.i = i
def get(self):
func_name = 'function' + self.i
self.func_name() # <-- this does NOT work.
def function1(self):
//do something
def function2(self):
//do something
錯誤,我得到的動態調用類中的方法: 類型錯誤:「海峽」對象不是可調用如何使用方法名賦值給變量
可能有人請這方面的幫助。我嘗試了很多排列和組合,但無濟於事! (注: 'self.func_name' 也不起作用)
根據您的使用,你可能會用的功能,無論是列表/字典,或使用拉姆達功能更好傳遞函數的附加參數(後者主要用於回調)。 – sapi
這不是你得到這個錯誤的代碼。當你做'self.func_name'時,你甚至不訪問本地變量'func_name'。你正試圖訪問'self'內的一個名爲'class name'的實例變量 - 但是這個變量不存在。 – Elazar
@Elazar是我的錯誤。我正在翻譯代碼,錯過了這一個。 –