2017-08-04 1 views
1

私は3つの関数a、b、cを持っているとしましょう。私は特定のパラメータでそれらを順番に実行し、それらの実行に関連する値を出力したい。何かのように:シーケンスで関数を実行する

funcDict = { 
    a: "a", 
    b: "b", 
    c: "c" 
} 

for func in funcDict: 
    func("test") 
    print(funcDict(func)) 
+0

どのようなpythonバージョンがありますか? –

+0

3.5ですが、私は一般的には不思議でした –

答えて

3

あなたは、ほとんどの順序のために、リストとのより良いオプションがあります。

func_list= [ 
    (a, "a"), 
    (b, "b"), 
    (c, "c") 
] 

for func, param in func_list: 
    func("test") 
    print(func(param)) 
3

はあなたがpython3.6上で実行している場合、辞書は順序付けられているので、これは確かに動作します:古いバージョンのPythonで

for func in funcDict: 
    func("test") 
    print(func(funcDict[func])) 

this answerが推奨するように、私は、リストやタプルのリストのリストをお勧めします。

関連する問題