2017-08-04 126 views
1

比方说,我有三个函数,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运行,字典是有序的,所以这确实是工作原理:

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

在旧版本的Python,我会建议的元组列表的列表或列表,如this answer建议。