繁体   English   中英

python单击返回帮助器菜单

[英]python Click Return the helper menu

我刚刚开始使用python click模块,我希望它在单击引发错误时自动启动“ --help”功能。

test.py

@click.command()
@click.option('--count', default=1, help='Number of greetings.')
@click.option('--name', default=Adam,
              help='The person to great.')
def test(name):
    print name

如果要从命令行以test.py --no_such_thing的形式运行脚本。 有没有办法让--help出现而不是正常的:Error no Option --no_such_thing

简而言之,您需要修改click.exceptions.UsageError.show方法。 但是,我在此SO帖子的答案中对此问题以及示例代码发布了更深入的答案。

如果您使用的是Click 4.0+,则可以使用Context.ignore_unknown_optionsContext.allow_extra_args对未知选项禁用自动错误处理:

import click

@click.command(context_settings={
    'allow_extra_args': True,
    'ignore_unknown_options': True,
})
@click.pass_context
def hello(ctx):
    if ctx.args:
        print(hello.get_help(ctx))

if __name__ == "__main__":
    hello()

在这种情况下,您的命令将在ctx.args列表中接收其余参数。 缺点是您需要自己处理错误,否则程序将以静默方式失败。

转发未知选项部分的文档中可以找到更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM