【问题标题】:Python 2.7 Argparse Optional and Required argumentsPython 2.7 Argparse 可选和必需参数
【发布时间】:2017-01-15 12:14:52
【问题描述】:

所以我一直在疯狂地阅读有关 argparse 的教程,但似乎无法弄清楚为什么我的程序会出错。我的代码目前如下所示:

parser = argparse.ArgumentParser()
parser.add_argument("-d", "-debug", required = False, help = "optional parameter")
parser.add_argument("input_file", help = "file to be parsed")
args = parser.parse_args()

当我使用命令“python myprogram.py -d inputfile”运行我的程序时,它抱怨参数太少。此外,当我只是以 inputfile 作为参数运行它时,它可以工作。

有人知道为什么会这样吗?

【问题讨论】:

    标签: python python-2.7 command-line-arguments


    【解决方案1】:

    参数的default action'store'store 操作通常期望 与标志相关联。

    看起来您希望这是一个布尔开关类型的标志,在这种情况下您需要 'store_true' 操作

    parser = argparse.ArgumentParser()
    parser.add_argument("-d", "--debug", required = False, help = "optional parameter", action = "store_true")
    parser.add_argument("input_file", help = "file to be parsed")
    args = parser.parse_args()
    

    【讨论】:

      猜你喜欢
      • 2014-08-02
      • 2020-08-24
      • 2020-05-03
      • 1970-01-01
      • 2017-11-28
      • 2019-11-17
      • 2013-05-23
      • 1970-01-01
      相关资源
      最近更新 更多