uv简介
uv 是一个由 Rust 编写的高性能 Python 包和环境管理工具,旨在替代传统的 pip 和 virtualenv,提供更快的包安装和依赖解析能力。uv 支持跨平台,兼容现有 Python 工作流。
主要特性
- 极速包安装与依赖解析
- 环境管理(创建、激活、删除虚拟环境)
- 兼容 pip/virtualenv 命令
- 支持 Windows、macOS、Linux
安装方法
通过 npm 安装
通过 pipx 安装
下载二进制文件
可从 GitHub Releases 下载适合平台的二进制文件。
基本用法
创建虚拟环境
激活虚拟环境
Windows:
macOS/Linux:
1
| source .venv/bin/activate
|
安装包
1
| uv pip install requests numpy
|
查看已安装包
卸载包
1
| uv pip uninstall requests
|
升级包
1
| uv pip install --upgrade numpy
|
项目管理
uv 不仅可以管理包和虚拟环境,还支持项目级的依赖管理和配置。
初始化项目
可以使用 uv 初始化一个新的 Python 项目,自动生成 pyproject.toml:
添加依赖
向项目添加依赖包,并自动写入 pyproject.toml:
移除依赖
从项目中移除指定包:
生成 requirements.txt
根据当前项目依赖生成 requirements.txt 文件:
1
| uv requirements > requirements.txt
|
安装项目依赖
根据 pyproject.toml 安装所有依赖:
升级所有依赖
区分开发与生产环境依赖
uv 支持通过 --dev 参数区分开发环境和生产环境依赖。
添加开发依赖
将依赖包添加到开发环境(dev-dependencies):
1
| uv add --dev pytest black
|
安装开发依赖
安装所有依赖(包括开发依赖):
只安装生产依赖:
移除开发依赖
从开发依赖中移除包:
导出 requirements 文件
导出生产依赖:
1
| uv requirements > requirements.txt
|
导出开发依赖:
1
| uv requirements --dev > dev-requirements.txt
|
与传统工具对比
- 安装速度远快于 pip
- 依赖解析更高效
- 命令兼容性好,迁移成本低
参考链接