搞帅的!python命令行工具,终端输出美化库typer

97 阅读1分钟

先看效果:

官方文档对它的描述是:

Typer is a library for buildingCLIapplications that users willlove usingand developers willlove creating. Based on Python type hints. It's also a command line tool to run scripts, automatically converting them to CLI applications.

Typer 是一个用于构建用户喜欢使用开发人员喜欢创建的CLI应用程序的库。基于 Python 类型提示。它也是一个命令行工具,用于运行脚本,自动将它们转换为 CLI 应用程序。

接下来我们来看看怎么使用typer

安装:

pip install --upgrade pip
pip install typer

我们直接从一个简单的脚本开始:

import typer                           # NOTE

app = typer.Typer()                    # NOTE

@app.command()                         # NOTE
def Hello(name:str, InLove: bool = False):
    if InLove:
        print(f"im into u, {name}")
    else:
        print(f"Hello, {name}")

if __name__ = '__main__':
    app()                               # NOTE

标记为NOTE的都是关键语句,typer是通过一个装饰器包装函数来创建CLI应用,

此时在终端运行命令:

python test.py --help

就能看到:

输入参数:

输入选项:

我们再故意删除if _name_ == '_main_':这条语句最前面的i:
然后在终端输入:

typer test.py --help

就能看到编排之后的错误信息,非常好用。

最后:

尽管这不是一个效率工具,但是它帅啊!