uv
uv 是 Astral 用 Rust 编写的极速 Python 包与项目管理器,可替代 pip、pip-tools、pipx、poetry、pyenv、virtualenv 等工具,速度比 pip 快 10-100 倍,支持项目锁文件、脚本依赖、Python 版本管理与 pip 兼容接口。
过去 7 天收获 1 颗 Star
爱鲜报评分
0.0
0 人评分
91k
星数
否
中文
Rust
主语言
是
活跃
609
贡献者
人工分析
EDITORIAL推荐理由
uv 由 Ruff 团队打造,用 Rust 重写 Python 包管理全链路,安装与解析速度提升一个数量级,且提供 pip 兼容命令,迁移成本低。它把虚拟环境、依赖锁定、Python 版本、工具运行整合进单一二进制,适合希望统一并加速 Python 工程流程的团队。
适用场景
- Python 项目依赖管理与锁文件
- CI/CD 中加速依赖安装
- 单文件脚本的依赖声明与运行
- 多 Python 版本切换与安装
- 替代 pipx 运行命令行工具
优点
- Rust 实现,安装与解析速度远超 pip
- 单一工具覆盖 pip、poetry、pyenv、pipx 等
- 提供 pip 兼容接口,迁移平滑
- 全局缓存去重,节省磁盘空间
- 跨 macOS、Linux、Windows,安装简单
缺点
- 较新工具,部分边缘场景行为与 pip 存在差异
- 团队需统一工作流,避免与旧工具混用
- 文档以英文为主,中文资料相对较少
上手难度
入门
uv 是什么
uv 是由 Astral(Ruff 的作者团队)用 Rust 编写的 Python 包与项目管理器,目标是成为 Python 工程的一站式工具。官方称其比 pip 快 10-100 倍,并可在单一工具中替代 pip、pip-tools、pipx、poetry、pyenv、virtualenv、twine 等。
核心能力
- 项目管理:
uv init初始化项目,uv add添加依赖,uv lock生成通用锁文件,uv sync同步环境。 - 脚本运行:支持在单文件脚本中声明内联依赖,
uv run自动创建隔离环境执行。 - 工具运行:
uvx(即uv tool run)在临时环境中运行 Python 命令行工具,uv tool install可全局安装。 - Python 版本管理:
uv python install安装多个 Python 版本,uv python pin固定项目版本。 - pip 兼容接口:
uv pip compile、uv pip sync、uv venv等命令可直接替换现有工作流。
快速体验
# 初始化项目并添加依赖
uv init example
cd example
uv add ruff
# 运行工具
uvx pycowsay 'hello world!'
# 使用 pip 兼容接口
uv pip compile requirements.in --universal --output-file requirements.txt
uv pip sync requirements.txt
适用与注意
uv 适合新项目从零搭建,也适合在 CI 中替换 pip 以显著缩短安装时间。由于它仍在快速迭代,团队应统一工具链,避免与旧工具混用导致环境不一致。
项目采用 Apache-2.0 协议,支持 macOS、Linux 与 Windows,可通过独立安装脚本或 PyPI 安装。
评论
- 暂无评论,来写第一条吧。