python - 指定要使用 argparse 运行的命令

标签 python command-line-arguments

我正在编写一个具有不同行为的Python程序,即它针对不同的[command]参数调用不同的函数。这些命令可以从指定命令的列表中选择。目前我有:

parser.add_argument("command", choices=["command1", "command2"])

然而,这意味着我无法为每个不同的命令指定帮助消息,而且看起来有点老套。有没有正确的方法可以让我为每个命令指定帮助?

编辑:如何确保该命令是第一个参数?

最佳答案

为了让每个命令都有自己的帮助消息,command 需要是 subcommand而不是位置参数:

command = parser.add_subparsers(title='command', dest='command')
command.add_parser('command1', help='Foo all your bars')
command.add_parser('command2', help='Bar all your foos')

关于python - 指定要使用 argparse 运行的命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35186964/

相关文章:

python - Apache 导入错误 : No module named _socket in wsgi deployment on Django

python - 检索 python 字典的最后一个值

python - 如何用另一个列表中的字典值填充一个列表中的字典值?

Python nosetests : how to access cmd line options? 即 `--failed`

java - 当我运行 .jar 时,出现 "No lwjgl in java.library.path"错误

ruby-on-rails - Ocra 生成的 exe 不接受参数

python - 如何在 Python 中从流追加到文件而不是覆盖

python - 从对象化 XML 中高效获取多个切片

c++ - 用于从 cmd 运行参数获取值的库或片段

Python argparse 可选参数仅在输入正确位置时才有效