gpt4 book ai didi

python - 动态选择函数

转载 作者:太空宇宙 更新时间:2023-11-04 10:49:39 25 4
gpt4 key购买 nike

我有一些代码如下所示:

if command == 'a':
do_a(a, b, c)
elif command == 'b':
do_b(a, b, c)
elif command == 'c':
do_c(a, b, c)

我怎样才能用更优雅的东西代替这种东西呢?也许,沿着 do_[command](a, b, c) 的路线,被调用的函数取决于命令?

有可能吗?

最佳答案

您可以将命令存储在字典中并在需要时查找:

In [15]: commands = {'mul': lambda x,y: x*y,
'add': lambda x,y: x+y}

In [16]: commands['mul'](3,4)
Out[16]: 12

In [17]: commands['add'](3,4)
Out[17]: 7

In [18]: command = 'add'; vars = (4,5)
In [19]: commands[command](*vars)
Out[19]: 9

你应该检查 command 是否确实在 commands 中:

if command in commands:
commands[command]()
else:
# handle error

关于python - 动态选择函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14749801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com