argparse“强制”可选参数

2024-05-18 08:34:13 发布

您现在位置:Python中文网/ 问答频道 /正文

Python的argparse模块有所谓的“可选”参数。默认情况下,名称以---开头的所有参数都是可选的。通常,强制参数是位置参数,因此在运行程序时,它们不会显式地命名为。

例如,在脚本中:

parser.add_argument('language', help="Output language")

调用如下:

$ hello-world czech

有时,按名称传递强制参数可能更好(例如,脚本调用更容易以这种方式读取),但仍然是强制的。i、 e

$ hello-world --use-lang czech

如何做到这一点?在argparse文档中,命名参数被称为“可选”参数,这使得它们听起来像是不能是必需的。有没有办法强制执行?


Tags: 模块程序脚本名称addparserhelloworld
1条回答
网友
1楼 · 发布于 2024-05-18 08:34:13

根据规范文档,可以declare 'optional' arguments that are compulsory。使用add_argumentrequired命名参数:

parser.add_argument('--use-lang', required=True, help="Output language")

相关问题 更多 >