uv:新一代 Python 包管理工具入门¶
uv 是一个用 Rust 写的、速度极快的 Python 包管理和项目管理工具,由开发 Ruff 的 Astral 团队出品。它可以替代 pip、virtualenv、pip-tools 等,装包和创建环境通常比 pip 快一个数量级以上。
下面按全流程来:先安装,再验证,最后从零跑起一个项目。
一、安装 uv¶
按你的系统选一种方式执行即可。
在终端执行:
1 | |
安装完成后,新开一个终端窗口(或新开一个标签页),再继续后面的「验证安装」。
在终端执行:
1 | |
脚本会把 uv 装到当前用户目录,并提示你把某路径加入 PATH(若未自动配置)。按提示操作后,新开一个终端,再继续「验证安装」。
在 PowerShell 中执行(若提示执行策略限制,先选「是」或以管理员运行):
1 | |
安装完成后新开一个 PowerShell 窗口,再继续「验证安装」。
二、验证安装¶
在新开的终端里执行:
1 | |
若显示类似 uv 0.10.0 的版本号,说明安装成功。若提示「命令未找到」,说明 PATH 里还没有 uv,需要把安装时提示的路径加入环境变量(或新开终端再试一次)。
三、国内用户可选:配置镜像¶
若从国外源装包很慢,可以先配置国内镜像再使用。在终端执行:
1 | |
然后编辑(或新建)文件 ~/.config/uv/uv.toml,加入:
1 2 3 | |
保存后,后续 uv add、uv sync 等会走该镜像,一般会快不少。
四、全流程:从安装到跑起第一个项目¶
按顺序做下面几步,就能用 uv 从零跑起一个带依赖的项目。
1. 创建项目目录并进入¶
1 | |
2. 用 uv 初始化项目¶
1 | |
会生成 pyproject.toml、README.md 等,并自动创建虚拟环境(无需手写 python -m venv)。
3. 写一个用第三方库的小脚本(示例)¶
例如用 requests 发请求。新建文件 main.py,内容可为:
1 2 3 | |
4. 用 uv 添加依赖¶
1 | |
uv 会把 requests 写入 pyproject.toml 并安装到当前项目环境。
5. 用项目环境运行脚本¶
1 | |
这里会用当前项目的虚拟环境和已安装的 requests 运行 main.py,无需先 source activate。
至此:安装 → 验证 → 初始化项目 → 加依赖 → 运行 全流程走完。
五、已有项目:从 requirements.txt 接入¶
若已有 requirements.txt,在项目目录下执行:
1 2 | |
即可把现有依赖接到 uv 项目里,之后用 uv run python xxx.py 运行即可。
六、常用命令速查¶
| 你想做的事 | 命令 |
|---|---|
| 看 uv 版本 | uv --version |
| 新建 Python 项目 | uv init |
| 给项目加依赖 | uv add 包名(如 uv add requests) |
| 按锁文件同步环境 | uv sync |
| 用项目环境跑脚本 | uv run python main.py 或 uv run pytest |
| 安装指定 Python 版本 | uv python install 3.12 |
| 临时跑一个工具 | uvx 工具名(如 uvx ruff check .) |
七、和 pip 对比,一句话¶
- pip:装包、建虚拟环境要自己来,大项目容易慢。
- uv:一条命令完成项目初始化、依赖安装和运行,速度快、用法简单。
记住三件事就够日常用:uv --version 看版本,uv add 包名 加依赖,uv run python xxx.py 跑脚本。