繁体   English   中英

argparse参数的可选值

[英]argparse optional value for argument

我想区分这三种情况:

  • 所有python example.py都不存在该标志;
  • 标志存在但没有值python example.py -t ;
  • 该标志存在并具有值python example.py -t ~/some/path

我怎么能用Python argparse做到这一点? 前两个案例将由action='store_true'覆盖,但第三个案例将变为无效。

你可以用nargs='?'来做到这一点

如果可能,将从命令行使用一个参数,并将其作为单个项生成。 如果不存在命令行参数,则将生成默认值。 请注意,对于可选参数,还有一种情况 - 选项字符串存在但后面没有命令行参数。 在这种情况下,将生成const的值。

你的三个案例会给出:

  1. default值;
  2. const值;
  3. '~/some/path'

分别。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM