2009-12-23 59 views
6

假設我有一個名爲test的類對象。當方法名稱在變量中時,如何訪問對象的方法?

測試有各種方法,其中之一是什麼()。

我有一個變量命名的方法=「無所謂」

我如何可以訪問使用與測試變量的方法?

謝謝!

+0

你爲什麼覺得你需要這個?你能提供其餘的代碼嗎?通常有一種更簡單的方法來做到這一點,它不涉及通過字符串確定方法名稱。 – 2009-12-23 20:51:19

回答

9

獲取與getattr屬性:

method = "whatever" 
getattr(test, method) 

你也可以把它叫做:

getattr(test, method)() 
2

訪問的方法,getattr(test, test.method);這樣你可以將它綁定到一個變量,將其作爲函數結果返回,將其作爲參數傳遞,等等。至調用它也可以附加括號括起來的參數(如果沒有參數,只需要括號),例如getattr(test, test.method)()