Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用python单击实现--version?_Python_Command Line Arguments_Python Click - Fatal编程技术网

如何使用python单击实现--version?

如何使用python单击实现--version?,python,command-line-arguments,python-click,Python,Command Line Arguments,Python Click,我想使用python单击实现mycommand--version。我有这样的工作,但感觉有点笨重 @click.group(invoke_without_command=True, no_args_is_help=True) @click.pass_context @click.option('--version', 'version') def cli(ctx, version): if version: ctx.echo(f'{sys.argv[0]} {__vers

我想使用python单击实现
mycommand--version
。我有这样的工作,但感觉有点笨重

@click.group(invoke_without_command=True, no_args_is_help=True)
@click.pass_context
@click.option('--version', 'version')
def cli(ctx, version):
    if version:
        ctx.echo(f'{sys.argv[0]} {__version__}')
        ctx.exit()

事实证明,
click
有一个内置的装饰器来完成这项工作。代码现在变成:

@click.group()
@click.version_option(__version__)
@click.pass_context
def cli(ctx):
    pass

谢谢这里有一个文档链接,以了解有关
单击的更多信息。版本\u选项