获取参数并根据该参数运行函数

时间:2014-06-23 20:45:39

标签: python

运行依赖于参数的函数的移动有效方法是什么? 我将永远知道x将是什么,所以我可以将所有这些可能性存储在列表中,但那么这将如何帮助我调用相应的函数?

仅仅是为了上下文,我对x有超过12种可能性,如果陈述错误,我会感觉写作12。

def run(x):
    if x == "dog":
        dogfunction()
    if x == "cat":
        catfunction()

1 个答案:

答案 0 :(得分:5)

你可以这样做:

def run(x):
    functions = {
        "dog": dogfunction,
        "cat": catfunction,
    }
    functions[x]()

这显式地将字符串映射到函数。如果字符串不在函数字典中,它也会引发KeyError