我有:
from argparse import ArgumentParser
parser = ArgumentParser(description='Test')
parser.add_argument("command",
help="the command to be executed",
choices=["dump", "delete", "update", "set"],
default="set")
parser.parse_args()
但是当我运行:python test.py
时,会得到以下结果:
usage: test.py [-h] {dump,delete,update,set}
test.py: error: too few arguments
也许今天我只是太过迷糊了,但我就是想不出我的输入哪里错了。或者说使用 argparse 简直不可能实现这一点吗?
nargs='?'
。 - Leontest.py dump delete
- 所以我得到了一系列的命令...但实际上我只想要 一个。这可能吗? - GhostCatnargs=1
,或者只是让它保持为nargs="*"
,然后通过执行类似于args=parser.parse_args()
的操作来解析 parser.parse_args() 的值,然后使用args.command[0]
检索第一个(或任何一个)参数。这完全取决于您的设计选择! - Squizz