uv 是一个由 Astral 团队(Ruff 和 Black 的开发者)推出的高性能 Python 包管理工具,旨在替代 pip、pip-tools 和 virtualenv 等传统工具。它强调极速(比 pip 快 10-100 倍)、支持全局依赖缓存,并兼容 pip 和 pip-tools 的工作流。
主要功能
1. 快速安装和管理 Python 包
uv pip install requests # 单包安装
uv pip install -r requirements.txt # 批量安装
2. 生成和管理锁文件 (requirements.lock)
uv pip compile requirements.in -o requirements.lock # 生成锁文件
uv pip sync requirements.lock # 根据锁文件同步环境
3. 创建虚拟环境
uv venv .venv # 创建虚拟环境到 .venv 目录
source .venv/bin/activate # 激活虚拟环境
4. 与 poetry 兼容
支持 pyproject.toml 的依赖解析:
uv pip install -e . # 以可编辑模式安装当前项目的依赖
核心优势
1. 极快的速度:基于 Rust 实现,利用多线程和缓存大幅加速依赖解析。
2. 轻量且独立:无需预装 Python 环境,直接作为静态二进制文件运行。
3. 全局缓存:减少重复下载,所有项目共享全局包缓存。
4. 无缝兼容:
- 支持传统
requirements.txt和pip命令。 - 可配合
poetry、pdm等现代工具工作。 - 生成与
pip-compile兼容的锁文件。
常见命令示例
| 操作 | 命令 |
|---|---|
| 安装包 | uv pip install numpy |
| 生成锁文件 | uv pip compile pyproject.toml -o requirements.lock |
| 同步依赖 | uv pip sync requirements.lock |
| 创建虚拟环境 | uv venv .venv |
| 显示帮助 | uv --help 或 uv pip --help |
安装方法
参考文章:https://docs.astral.sh/uv/getting-started/installation/
Linux/macOS
# Linux/macOS
curl -LsSf https://astral.sh/uv/install.sh | sh
Windows (PowerShell)
# Windows (PowerShell)
irm https://astral.sh/uv/install.ps1 | iex
# 如提示不允许执行脚本可用下面命令:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

装完后重启一下终端:

适用场景
- 需要快速初始化 Python 环境(如 CI/CD 流程)。
- 项目管理需要兼容传统 pip 和现代工具链。
- 依赖解析速度成为瓶颈时(特别是大型项目)。
注意事项
- ⚠️
uv仍处于早期开发阶段(截至 2024 年),部分高级功能可能受限。 - 建议开发者关注其兼容性和稳定性的持续提升。
官方文档:Astral UV
ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ
ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ
1065

被折叠的 条评论
为什么被折叠?



