首页 > 解决方案 > 单击布尔选项不能是必需的?

问题描述

我在我的代码中使用了这样的点击选项:

@click.option('--stepids', '-s', required=True, is_flag=True)

但是当我在没有 -s 选项的情况下启动我的命令时,它会执行而不会引发任何错误。我猜该标志的隐含值为 False,我怎样才能将其设置为空,以便我的脚本会告诉“错误缺少 -s 参数”?我试过 default=' ' 但它没有用。

如果你觉得它很奇怪,我正在使用这个技巧来模拟一个具有未知数量参数的多值选项。

@click.option('--stepids', '-s', required=True, is_flag=True)
@click.argument('stepsids', nargs=-1)

然后我可以像这样使用它“我的脚本 -s 10 11 2...”

谢谢^^

标签: pythonclickcommand-line-interfacepython-click

解决方案


推荐阅读