首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:如何删除Typer上的默认选项?

Python:如何删除Typer上的默认选项?
EN

Stack Overflow用户
提问于 2020-06-21 05:10:13
回答 2查看 1.1K关注 0票数 10

我使用Typer枕头做了一个简单的CLI来改变图像的不透明度,这个程序只有一个选项:不透明度。

但是,当我运行python opacity.py --help时,它给了我两个typerCLI选项:

代码语言:javascript
复制
Options:
  --install-completion [bash|zsh|fish|powershell|pwsh]
                                  Install completion for the specified
                                  shell.

  --show-completion [bash|zsh|fish|powershell|pwsh]
                                  Show completion for the specified
                                  shell, to copy it or customize the
                                  installation.

  --help                          Show this message and exit.

有办法让它失效吗?我没有在文件上找到。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-08 14:28:44

今天我遇到了同样的问题,除了在源代码中找到这个问题之外,我什么也找不到,我发现Typer是如何在应用程序中自动添加这一行的,所以我发现了这一点,当Typer初始化自己时,它会自动将add_completion设置为True

代码语言:javascript
复制
class Typer:
    def __init__(add_completion: bool = True)

因此,当您初始化应用程序时,可以添加以下内容

代码语言:javascript
复制
app = typer.Typer(add_completion=False)

这就是它如何处理添加add_completion=False的方式

代码语言:javascript
复制
Usage: main.py [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.
票数 15
EN

Stack Overflow用户

发布于 2022-11-09 09:30:12

0.7.0版本开始,Typer 默认情况下不包括这些如果您使用typer.run() API的话。

示例:

代码语言:javascript
复制
# foo.py
import typer

def main():
    pass

if __name__ == "__main__":
    typer.run(main)

生产:

代码语言:javascript
复制
$ pip install typer[all]==0.7.0
$ python foo.py --help

 Usage: foo.py [OPTIONS]

╭─ Options ───────────────────────────────────────╮
│ --help          Show this message and exit.     │
╰─────────────────────────────────────────────────╯
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62494622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档