【发布时间】:2021-03-03 15:16:30
【问题描述】:
我有一个使用默认名称和密码的程序。我正在使用 argparse 来允许用户指定命令行选项,并且我想让用户能够为程序提供不同的名称和密码以供使用。所以我有以下内容:
parser.add_argument(
'-n',
'--name',
help='the login name that you wish the program to use'
)
parser.add_argument(
'-p',
'--password',
help='the password to log in with.'
)
但是只指定名称或只指定密码没有任何意义,但不指定任何一个都是有意义的。我注意到 argparse 确实有能力指定两个参数是互斥的。但我所拥有的是两个必须同时出现的论点。我如何得到这种行为? (我发现文档中提到了“参数组”,但它们似乎无法解决我的问题http://docs.python.org/2/library/argparse.html#argument-groups)
【问题讨论】:
-
我认为对参数进行后处理是不可能的?
-
没有什么是不可能的。我只想让 argparse 为我完成这项工作并告诉用户选项必须一起出现。
标签: python command-line-arguments argparse