在Python中设置argparse时如何添加具有默认值的关键字参数?

问题描述 投票:0回答:1

我有一个函数,可以使用

argparse
:

设置调用函数时可以将哪些参数传递到命令行
def parse_arguments(args):
    parser = argparse.ArgumentParser(usage=argparse_usage())
    parser.add_argument('mic', type=str)
    parser.add_argument('date_range', type=str)
    parser.add_argument('sleep_time', type=int, nargs="?", default=1)
    parser.add_argument('force', type=bool, action='store_false')

有两件事我不太清楚:

  1. 如何将最后一个参数
    force
    设为默认为
    False
    的关键字参数? - 这可能吗?
  2. 将默认值设置为
    store_false
    False
    是否实现了上面的第二部分?
python argparse
1个回答
1
投票

你几乎永远不想使用

store_false
;使用
store_true
代替:

parser.add_argument('--force', type=bool, action='store_true')

上面的代码添加了一个标志

--force
,如果在命令行上传递该标志,则将
force
设置为
True
;否则默认为
False
。通过使用
store_false
,您将执行相反的操作(默认为
True
)。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.