uv命令介绍高性能Python包管理工具,旨在替代pippip-tools和virtualenv等传统工具
uv命令介绍(高性能Python包管理工具,旨在替代pip、pip-tools和virtualenv等传统工具)
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 |
安装方法
# Linux/macOS
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
irm https://astral.sh/uv/install.ps1 | iex
适用场景
- 需要快速初始化 Python 环境(如 CI/CD 流程)。
- 项目管理需要兼容传统 pip
和现代工具链。
- 依赖解析速度成为瓶颈时(特别是大型项目)。
注意事项
- ⚠️
uv
仍处于早期开发阶段(截至 2024 年),部分高级功能可能受限。 - 建议开发者关注其兼容性和稳定性的持续提升。
官方文档:
ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ
ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ