UV工具安装配置使用教程
目录
前言
1. uv能干什么?
2. 安装使用
2.1 安装
2.2 使用示例
前言
uv
是 Astral(也就是开发 Ruff、Rye 的那家公司)推出的一款新一代 Python 包管理与环境工具,它的目标是 替代 pip、virtualenv、pip-tools、pipx、venv 等工具的组合,用一个命令行工具搞定从环境管理到依赖安装的整个流程。
1. uv能干什么?
分类 | 作用 | 对应传统工具 |
---|
🧱 环境管理 | 创建和管理虚拟环境 | venv , virtualenv , pyenv |
📦 包管理 | 安装、升级、同步包 | pip , pip-tools |
🧰 运行隔离环境命令 | 类似 pipx | pipx |
🔍 依赖锁定与同步 | 自动解决依赖冲突并生成 lock | pip-tools , poetry |
🧹 缓存与版本控制 | 多环境共享缓存、快速切换 | 无直接等价 |
2. 安装使用
2.1 安装
uv 提供了独立安装程序用于下载和安装:
macOS和Linux:
# 使用 curl 下载脚本并通过 sh 执行:
curl -LsSf https://astral.sh/uv/install.sh | sh# 如果系统没有 curl,可以使用 wget:
wget -qO- https://astral.sh/uv/install.sh | sh# 通过在 URL 中包含版本号来请求特定版本:
curl -LsSf https://astral.sh/uv/0.7.4/install.sh | sh
Windows:
# 使用 irm 下载脚本并通过 iex 执行:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"# 通过在 URL 中包含版本号来请求特定版本:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/0.7.4/install.ps1 | iex"
为方便使用,uv 已发布至 PyPI。
如果从 PyPI 安装,建议将 uv 安装到隔离环境中,例如使用 pipx
:
pipx install uv
当然,也可以使用 pip
:
pip install uv
验证安装是否成功:
uv --version
其他安装可参考文档:https://uv.doczh.com/getting-started/installation/#_2
2.2 使用示例
1)新建存放虚拟环境的文件夹并进入
mkdir uv-envs && cd uv-envs
2)安装(Linux系统)
curl -LsSf https://astral.sh/uv/install.sh | sh
3)如果要进行环境迁移,将conda环境中的包迁移到uv环境中
# 切换conda环境
conda activate dmx# 导出所安装的包
pip freeze > requirements_uv.txt
将得到一个requirements_uv.txt文件,这个文件里面保存有dmx环境所有的包。
4)项目初始化以及启动环境
# 初始化项目
uv init ./# 同步依赖环境,让当前虚拟环境(或项目的 .venv)与配置文件中的依赖保持一致。
uv sync# 退出conda环境
conda deactivate# 启动uv环境
source .venv/bin/activate
初始化之后会出现下述文件:
my_uv_project/
├── .gitignore # Git忽略文件(自动包含.venv等环境目录)
├── .python-version # 记录项目Python版本(类似pyenv)
├── main.py # 示例入口脚本(可以删掉自己写)
├── pyproject.toml # 项目配置文件(核心!记录依赖和设置)
└── README.md # 项目说明文档
5)安装依赖包
uv pip sync requirements_uv.txt
如果出现下述错误,无法安装某个包,那么就需要从 requirements_uv.txt 文件中删除
再用下述命令安装:
uv pip install pyairports==2.1.1
6)退出 uv 环境
deactivate