python - 我怎样才能制作 "function dictionary"?

标签 python syntax programming-languages

我有很多函数,如果我有一个数组 [echo, "Bob is Good"] 我想运行带有整个数组参数的 echo 函数。所以它需要 arr[0] 并使用整个数组的参数运行该函数。现在我只有 if 语句,例如:

...
elif arr[0] == 'echo':
    echo(arr)
elif arr[0] == 'var':
    var(arr)

此外,最好是,现在我已经使用 cmd 前缀设置了我的函数。例如,echo 函数将被称为 echocmd,所以如果有一种方法可以实现它,那就太好了!

最佳答案

显而易见的方法。

funcdict = {
  'echo': echocmd,
  'var': varcmd,
   ...
}

 ...

funcdict.get(arr[0], invalidcmd)(arr)

关于python - 我怎样才能制作 "function dictionary"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10843430/

相关文章:

python - 我想嵌套循环十次,还有比这更好的方法吗?

python - 有时可以点击按钮,有时却不起作用

Razor 分号不见了?

仔细检查一下我的 C 代码有什么问题

iPhone Facebook 应用程序 : Finding out where the error is?

java - 动态编译语言 vs 静态编译语言

python - Owner_id 不能为空。 DRF关系数据库

python - 带有 log.p 参数的 Python 中 R 的 qchisq?

python - 从网站创建 JSON

javascript - 使用函数而不是更短的词是 JavaScript 语言发明者的一个大错误吗?