2013-10-30 114 views
-2

我試圖通過字符串變量動態如何動態傳遞變量在python

這樣

def calling(): 

    str='Login_CSA' 
    import importlib 
    mod = importlib.import_module(str) 
    mod.%str(10, 20, 30, 40) 

calling() 

,但我無法通過可變越來越語法錯誤「語法錯誤」和我與concatinating

mod.+str(10,20,30,40) 

嘗試仍不能的IAM能得到

可以u人告訴我如何動態地傳遞一個變量和其它語言一樣在Python

+0

我不明白你所期望的'國防部%STR(10,20,30,40)'做。你能展示出期望的結果嗎? – Blckknght

+3

您正在發明新的語法。 –

+0

@john john2 iam沒有發明新的語法我說我像這樣試過......就像其他語言是否會起作用你可以告訴我解決方案我們如何動態地傳遞變量 – somesh

回答

5

您可以使用getattr做到這一點。取而代之的

mod.%str(10, 20, 30, 40) 

使用

getattr(mod, str)(10, 20, 30, 40) 
+0

這是工作! – somesh