1.3 功能特性

原文链接: https://docs.astral.sh/uv/getting-started/features/

1.3 功能特性

uv 提供了 Python 开发所需的核心功能 —— 从安装 Python、编写简单脚本,到处理支持多个 Python 版本与平台的庞大项目。

uv 的接口可以划分为若干部分,它们既可以独立使用,也可以相互配合。

Python 版本

安装和管理 Python 本身。

  • uv python install:安装 Python 版本。
  • uv python list:查看可用的 Python 版本。
  • uv python find:查找已安装的 Python 版本。
  • uv python pin:将当前项目固定使用某个 Python 版本。
  • uv python uninstall:卸载某个 Python 版本。

参见安装 Python 指南开始使用。

脚本

执行独立的 Python 脚本,例如 example.py。

  • uv run:运行脚本。
  • uv add --script:为脚本添加依赖。
  • uv remove --script:从脚本中移除依赖。

参见运行脚本指南开始使用。

项目

创建和处理 Python 项目,即带有 pyproject.toml 的项目。

  • uv init:创建一个新的 Python 项目。
  • uv add:为项目添加依赖。
  • uv remove:从项目中移除依赖。
  • uv sync:将项目依赖同步到环境。
  • uv lock:为项目依赖创建锁文件。
  • uv run:在项目环境中运行命令。
  • uv tree:查看项目的依赖树。
  • uv build:将项目构建为分发包。
  • uv publish:将项目发布到包索引。

参见项目指南开始使用。

工具

运行和安装发布到 Python 包索引的工具,例如 ruff 或 black。

  • uvx / uv tool run:在临时环境中运行工具。
  • uv tool install:将工具安装到用户级别。
  • uv tool uninstall:卸载工具。
  • uv tool list:列出已安装的工具。
  • uv tool update-shell:更新 shell 以包含工具可执行文件。

参见工具指南开始使用。

pip 接口

手动管理环境和包 —— 适用于遗留工作流,或者高层命令提供的控制力不足的场景。

创建虚拟环境(替代 venv 和 virtualenv):

  • uv venv:创建一个新的虚拟环境。

细节请参阅使用环境文档。

管理环境中的包(替代 pip 和 pipdeptree):

  • uv pip install:将包安装到当前环境。
  • uv pip show:显示已安装包的详细信息。
  • uv pip freeze:列出已安装的包及其版本。
  • uv pip check:检查当前环境的包是否兼容。
  • uv pip list:列出已安装的包。
  • uv pip uninstall:卸载包。
  • uv pip tree:查看环境的依赖树。

细节请参阅管理包文档。

锁定环境中的包(替代 pip-tools):

  • uv pip compile:将 requirements 编译为锁文件。
  • uv pip sync:将环境与锁文件同步。

细节请参阅锁定环境文档。

重要

这些命令并未完全实现它们所参照工具的接口和行为。你越偏离常见工作流,就越可能遇到差异。细节请参阅 pip 兼容性指南。

实用工具

管理和检查 uv 的状态,例如缓存、存储目录,或执行自我更新:

  • uv cache clean:移除缓存条目。
  • uv cache prune:移除过期的缓存条目以及所有集中管理的项目环境。
  • uv cache dir:显示 uv 缓存目录路径。
  • uv tool dir:显示 uv 工具目录路径。
  • uv python dir:显示 uv 已安装 Python 版本的路径。
  • uv self update:将 uv 更新到最新版本。

后续步骤

阅读指南了解每项功能的入门介绍,查看概念页面深入了解 uv 各项功能的细节,或者了解遇到问题时如何获取帮助。

最后修改 September 25, 2026: 更新 (221c74c33)