【发布时间】:2020-05-11 21:26:21
【问题描述】:
我正在尝试编写一个程序,该程序向用户请求命令和一堆参数并执行它。此外,尝试通过使用 python 字典来提高效率。这是我的代码:
command, *args = input().split()
args = list(map(int, args))
options = {'a': print(args[0]),
'b': print(args[1]),
}
options.get(command)
但是,当我在输入中输入 'a 1 2' 时,程序会同时编译 command a 和 command b。这是为什么?我可以修复它吗?提前谢谢!
【问题讨论】:
-
在创建字典时执行打印命令。如果您不希望这样,请不要在字典中使用 print。
-
您甚至可以省略
options.get(command)行,将获得相同的输出... -
如果您想将参数传递给程序,请查看内置的“argparse”库。
-
谢谢大家!我现在明白了。
-
只是好奇为什么要在字典中打印?
标签: python function dictionary