argparse参数的可选值

时间:2015-06-17 16:13:31

标签: python python-3.x command-line-interface argparse

我想区分这三种情况:

  • 该标志并非全部存在python example.py;
  • 该标志存在但没有值python example.py -t;和
  • 该标志存在且值为python example.py -t ~/some/path

如何使用Python argparse执行此操作?前两个案例将由action='store_true'涵盖,但第三个案件将失效。

1 个答案:

答案 0 :(得分:7)

您可以使用nargs='?'执行此操作:

  

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

你的三个案例会给出:

  1. default值;
  2. const值;和
  3. '~/some/path'
  4. 分别