Repolode
fastapi

fastapi/typer

基于 Python 类型提示构建命令行应用的库,自动生成帮助信息并支持 Shell 自动补全。

Star
20,155
Fork
1,007
未关闭 Issue
49
最近提交
6天前

这是什么?

Typer 是一个用于构建命令行应用的 Python 库。开发者只需用标准类型提示声明函数参数,Typer 就会自动将其转换为 CLI 参数和选项,并处理解析、类型转换和错误提示。

生成的程序会自动提供 --help 帮助信息,并支持 Bash、Zsh、Fish 和 PowerShell 的自动补全。命令可以组织成任意嵌套的子命令和命令组。此外,typer 命令可以直接把已有的 Python 脚本作为 CLI 运行,无需修改代码。

Typer 与 FastAPI 采用相同的类型提示驱动风格。它依赖 rich 进行格式化输出、依赖 shellingham 检测当前 Shell,自 0.26.0 版起内部已集成 Click 的代码。

核心功能

  • 01根据 Python 类型提示自动生成 CLI 参数和选项。
  • 02自动生成 --help 帮助信息,并以格式化方式显示错误。
  • 03支持 Bash、Zsh、Fish 和 PowerShell 的 Shell 自动补全。
  • 04支持多层嵌套的子命令和命令组。
  • 05提供 typer 命令,可将普通 Python 脚本直接作为 CLI 运行。

适用场景

  • 编写需要参数解析和帮助文档的内部开发脚本。
  • 构建带有多个子命令的管理工具。
  • 无需改写代码,把已有的 Python 脚本变成命令行工具。

快速上手

  1. 1

    安装 uv(参见 README 中的安装指南)

  2. 2

    将 Typer 添加到项目中

    uv add typer
  3. 3

    使用 Typer 内置的 CLI 运行器运行脚本

    typer main.py run Camila

标签

常见问题

typer 是什么?
基于 Python 类型提示构建命令行应用的库,自动生成帮助信息并支持 Shell 自动补全。 Typer 是一个用于构建命令行应用的 Python 库。开发者只需用标准类型提示声明函数参数,Typer 就会自动将其转换为 CLI 参数和选项,并处理解析、类型转换和错误提示。
typer 可以免费使用吗?用的什么许可证?
typer 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
typer 还在维护吗?
活跃维护中。typer 最近一次提交是在 2026年10月15日。
typer 适合用来做什么?
编写需要参数解析和帮助文档的内部开发脚本。 构建带有多个子命令的管理工具。 无需改写代码,把已有的 Python 脚本变成命令行工具。
typer 怎么安装和运行?
安装 uv(参见 README 中的安装指南) 将 Typer 添加到项目中: uv add typer 使用 Typer 内置的 CLI 运行器运行脚本: typer main.py run Camila
在哪里获取 typer?
源代码和安装说明在 GitHub 上:https://github.com/fastapi/typer

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目