click lib 是否提供打印内置帮助消息的方法?
Does click lib provide a way to print the builtin help message?
我正在使用 click
库。
在我的代码中,有时我想打印帮助消息,
但我知道的唯一方法是:
python xxx --help
但我想使用特定函数在我的代码中打印帮助消息,例如:
click.print_help_msg()
有这样的功能吗?
我修改了 click 文档中的示例并想出了这个,但我以前没有使用过它,或者测试了下面的代码。
@click.command()
@click.option('--help')
def help():
"""Simple program that greets NAME for a total of COUNT times."""
for x in range(count):
click.echo(get_help_message())
def get_help_message():
return "I AM A HELP MESSAGE!"
这样的东西行不通吗?
您可以使用 click.echo
这样的东西:
click.echo('FooBar')
echo
还支持颜色代码和基于类型的过滤,例如:
click.echo('FooBar', err=True)
可以参考documentation了解更多。
您可以使用 Command 的 get_help 方法
import click
@click.command()
@click.option('--name', help='The person to greet.')
def hello(name):
"""Simple program that greets NAME."""
click.echo('Hello %s!' % name)
def print_help_msg(command):
with click.Context(command) as ctx:
click.echo(command.get_help(ctx))
>> print_help_msg(hello)
点击 5.x 您现在可以使用 get_current_context()
方法:
def print_help():
ctx = click.get_current_context()
click.echo(ctx.get_help())
ctx.exit()
如果您只想打印一条错误消息并退出,请尝试:
def exit_with_msg():
ctx = click.get_current_context()
ctx.fail("Something unexpected happened")
我正在使用 click
库。
在我的代码中,有时我想打印帮助消息, 但我知道的唯一方法是:
python xxx --help
但我想使用特定函数在我的代码中打印帮助消息,例如:
click.print_help_msg()
有这样的功能吗?
我修改了 click 文档中的示例并想出了这个,但我以前没有使用过它,或者测试了下面的代码。
@click.command()
@click.option('--help')
def help():
"""Simple program that greets NAME for a total of COUNT times."""
for x in range(count):
click.echo(get_help_message())
def get_help_message():
return "I AM A HELP MESSAGE!"
这样的东西行不通吗?
您可以使用 click.echo
这样的东西:
click.echo('FooBar')
echo
还支持颜色代码和基于类型的过滤,例如:
click.echo('FooBar', err=True)
可以参考documentation了解更多。
您可以使用 Command 的 get_help 方法
import click
@click.command()
@click.option('--name', help='The person to greet.')
def hello(name):
"""Simple program that greets NAME."""
click.echo('Hello %s!' % name)
def print_help_msg(command):
with click.Context(command) as ctx:
click.echo(command.get_help(ctx))
>> print_help_msg(hello)
点击 5.x 您现在可以使用 get_current_context()
方法:
def print_help():
ctx = click.get_current_context()
click.echo(ctx.get_help())
ctx.exit()
如果您只想打印一条错误消息并退出,请尝试:
def exit_with_msg():
ctx = click.get_current_context()
ctx.fail("Something unexpected happened")