如何制作"功能字典"?

Tho*_*eia 1 python syntax programming-languages

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

...
elif arr[0] == 'echo':
    echo(arr)
elif arr[0] == 'var':
    var(arr)
Run Code Online (Sandbox Code Playgroud)

此外,最好,现在我的功能设置为前缀cmd.例如,echo函数将被称为echocmd,因此如果有一种方法可以实现,那么它也会很棒!

Ign*_*ams 5

显而易见的方式.

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

 ...

funcdict.get(arr[0], invalidcmd)(arr)
Run Code Online (Sandbox Code Playgroud)