【问题标题】:optparse.option action="store" with no parameteroptparse.option action="store" 不带参数
【发布时间】:2017-03-21 00:51:29
【问题描述】:

我想将 bool arg 转换为 store arg 并在 cli 上存在且没有提供值作为合法设置:

prog.py [--nuke [name1[,name2]*]]  # clean usual + optional csv string 

例如

prog.py                       # no action
prog.py --nuke                # usual clean
prog.py --nuke special,value  # extra named clean csv value special

实现这个问题的最简单答案是有 2 个选项。但是,在没有将想象力延伸得太远的情况下,我希望在选择方面非常保守。

我试图将空参数作为合法选项。我存在没有 args 的参数是合法的。我可以用一个参数来做到这一点吗?

def pytest_addoption(parser):
  parser.addoption('--nuke', action="store", default=False,
                   help="pass in named object to delete, or empty to "  
                        "delete usual-suspects. eg. "
                        "  prog --nuke   # remove all but host"
                        "  prog --nuke templates  # all but host plus named vm")

【问题讨论】:

标签: python pytest optparse


【解决方案1】:

最熟悉的方法:将其设为 2 个选项而不是 1 个选项 --nuke(action=store_true); --注定(行动=追加);

“nuke”的存在意味着执行默认操作。 “注定”的存在意味着修改核武器目标。

【讨论】:

    猜你喜欢
    • 2018-01-26
    • 2021-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多