[在使用click.group()时如何仅激活选项

问题描述 投票:0回答:1

我目前正在通过点击创建命令行参数。我几乎完成了研究,并且一切正常。问题是我想在使用click.group()而不是子命令时使用唯一的选项。

让我们说myCommand --version,这应该打印我的应用程序的版本,但提示Error: Missing command.时出现错误,>

我的代码是:

import sys
import os as _os
import click
import logging

from myApp import __version__

@click.group()
@click.option('--version', is_flag=True, help="Displays project version")
@click.pass_context
def cli(context, version: bool):
    if version:
        print(__version__)

@cli.command()
@click.pass_context
def init(context):
    click.echo(message="Starting initilization for the project" + str(context.obj))

@cli.command()
@click.pass_context
def install(context):
    click.echo(message="Starting installing from the saved data")

这里--version仅在我使用cli --version init之类的选项调用命令时才有效,但是我希望它是cli --version以打印版本。

有人可以帮我吗?

我目前正在通过点击创建命令行参数。我几乎完成了研究,并且一切正常。问题是我要在单击时使用唯一选项。...

python python-3.x arguments click command-line-interface
1个回答
0
投票

有一个click.version_option作为内置控件,应该可以执行您想要的操作。

© www.soinside.com 2019 - 2024. All rights reserved.