Python的argparse
模块具有所谓的“可选”参数。名称以-
或--
开头的所有参数都是可选的。通常,强制参数是位置参数,因此在运行程序时,它们不会明确地命名为。
例如,在具有以下内容的脚本中:
parser.add_argument('language', help="Output language")
调用看起来像:
$ hello-world czech
通过名称传递强制参数有时会更好(例如,脚本调用更容易以这种方式阅读),但仍然是强制性的。即。
$ hello-world --use-lang czech
如何实现这一目标?命名参数在argparse
文档中称为“可选”,这使得它听起来像不能是强制性的。有没有办法让它们成为强制性的?
答案 0 :(得分:32)
根据规范文档,可以declare 'optional' arguments that are compulsory。您使用required
的{{1}}命名参数:
add_argument