UV工具安装配置使用教程

目录

前言

[1. uv能干什么?](#1. uv能干什么?)

[2. 安装使用](#2. 安装使用)

[2.1 安装](#2.1 安装)

[2.2 使用示例](#2.2 使用示例)


前言

uv 是 Astral(也就是开发 RuffRye 的那家公司)推出的一款新一代 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:

bash 复制代码
# 使用 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:

bash 复制代码
# 使用 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

bash 复制代码
pipx install uv

当然,也可以使用 pip

bash 复制代码
pip install uv

验证安装是否成功:

bash 复制代码
uv --version

其他安装可参考文档:https://uv.doczh.com/getting-started/installation/#_2

2.2 使用示例

1)新建存放虚拟环境的文件夹并进入

bash 复制代码
mkdir uv-envs && cd uv-envs

2)安装(Linux系统)

bash 复制代码
curl -LsSf https://astral.sh/uv/install.sh | sh

3)如果要进行环境迁移,将conda环境中的包迁移到uv环境中

bash 复制代码
# 切换conda环境
conda activate dmx

# 导出所安装的包
pip freeze > requirements_uv.txt

将得到一个requirements_uv.txt文件,这个文件里面保存有dmx环境所有的包。

4)项目初始化以及启动环境

bash 复制代码
# 初始化项目
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)安装依赖包

bash 复制代码
uv pip sync requirements_uv.txt

如果出现下述错误,无法安装某个包,那么就需要从 requirements_uv.txt 文件中删除

再用下述命令安装:

bash 复制代码
uv pip install pyairports==2.1.1

6)退出 uv 环境

bash 复制代码
deactivate

相关推荐
如烟花的信页1 小时前
加速乐cookie逆向分析
javascript·爬虫·python·js逆向
装不满的克莱因瓶1 小时前
PyTorch 与它的自动微分工具:Autograd
人工智能·pytorch·python·深度学习·神经网络·机器学习·ai
cd988801 小时前
2026年,电销机器人哪家技术强?
python
weixin199701080161 小时前
[特殊字符] 1688开放平台API Sign签名算法详解(Java / Python / PHP 实现)
java·python·算法
TickDB1 小时前
Python 调用实时行情 API:ticker 返回成功后,如何校验字段再入库或展示
python·websocket·行情数据 api
AC赳赳老秦2 小时前
OpenClaw 助力技术面试:自动生成面试题、模拟面试、整理面试知识点
开发语言·python·面试·职场和发展·自动化·deepseek·openclaw
Hali_Botebie2 小时前
PyTorch 2.x核心变革torch.compile(),Triton 是其中最重要的 kernel 生成方式之一
人工智能·pytorch·python
我登哥MVP2 小时前
VS Code 安装 Claude Code 并接入 DeepSeek V4 Model
人工智能·python·node.js·agent·codex·deepseek·claude code
AI行业学习2 小时前
CC‑Switch v3.16.1-下载、配置、安装(2026‑06‑01 最新官方版)
开发语言·人工智能·windows·python
unity工具人2 小时前
python+yolov8 图像识别-测试案例
python·opencv·yolo