9
我正在使用getattr根據變量調用不同的函數。Python使用getattr調用具有可變參數的函數
Im做這樣的事情:
getattr(foo, bar)()
這樣的作品,像調用foo.bar)功能(
我的問題是,我有「酒吧」功能,我想用不同的稱呼它參數。例如:
def f1() :
pass
def f2(param1) :
pass
def f3(param1,param2) :
pass
所以「酒吧」可能是F1,F2或F3
我嘗試這樣做: assumming是params爲包含所需的「酒吧」功能的所有參數列表
getattr(foo, bar) (for p in params :)
我看一個「乾淨」的解決方案,沒有必要看是否存在params變量
我知道OP沒有特別要求,但我也會加上'** kwargs',這樣他就不會在以後嘗試使用關鍵字參數時很難追蹤錯誤。 – 2012-08-02 15:56:05
@ sr2222 - 已添加。 – mgilson 2012-08-02 16:00:42