UV是由Astral团队开发的下一代Python包管理工具,采用Rust编写,性能显著优于pip和conda。它具有极速安装(比pip快5-10倍)、可靠依赖解析、兼容pip命令、智能缓存等特点。支持Windows/macOS/Linux安装,提供一键脚本和手动安装两种方式。核心功能包括虚拟环境管理(uv venv)、依赖安装(uv pip install)和项目初始化(uv init)。在PyCharm中可通过配置不同路径的.venv实现多环境管理。常见问题如PowerShell脚本执行限制可通过修改执行策略解决。UV为Python开发者提供了更高效、可靠的包管理解决方案。
一、介绍
UV(Ultrafast Virtualenv)是一个由 Astral 团队开发的新一代 Python 包管理工具,于 2023 年推出。它的设计目标是解决 Python 包管理中的速度和依赖解析问题,使 Python 开发更加流畅高效。UV 由 Rust 语言编写,这使它在性能上有显著优势。
下载地址:https://github.com/astral-sh/uv/releases
uv特点
- 极速安装:比 pip 和 conda 快 5-10 倍
- 可靠的依赖解析:使用先进的解析算法,能更好地处理复杂依赖关系
- 兼容性:与 pip的大部分命令兼容,支持 requirements.txt 和 pyproject.toml
- 原子操作:安装过程更安全,失败时不会留下半完成状 态
- 轻量级:专注于 Python 包管理,不像 conda 那样管理整个系统级依赖
不同工具比较uv vs. conda vs. pip
二、安装
方式1:官方一键安装
步骤1:以管理员身份打开 PowerShell
- 按下
Win + X → 选择「Windows PowerShell (管理员)」(或「终端(管理员)」); - 先执行以下命令允许执行脚本(否则可能报错):
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
出现提示时输入 Y 并回车。
步骤2:执行官方安装命令
在 macOS 上安装推荐使用 Homebrew 安装:
brew install uv
或者使用官方安装脚本:
curl -LsSf https://astral.sh/uv/install.sh | sh
在 Linux 上安装
curl -LsSf https://astral.sh/uv/install.sh | sh
在 Windows 上安装使用 Winget:
winget install uv
或者使用官方安装脚本:
irm https://astral.sh/uv/install.ps1 | iex
安装完成后,验证安装是否成功:
uv --version
输出内容类似如下,表明安装成功:
uv 0.8.14 (Homebrew 2025-08-28)
方式2:手动下载二进制包(适合网络受限,推荐)
如果方式1因网络问题失败,可手动下载:
步骤1:下载 uv 二进制包
- 打开 uv 官方下载页:https://github.com/astral-sh/uv/releases
- 找到 Windows 版本:选择
uv-x86_64-pc-windows-msvc.zip(64位系统);
步骤2:配置环境变量
- 创建文件夹:比如
C:\Tools\uv,将 uv.exe 放入该文件夹; - 按下
Win + R → 输入 sysdm.cpl → 回车; - 在「用户变量」的「Path」中,添加
C:\Tools\uv;
步骤3:验证安装同方式1,执行 uv --version 验证。
三、快速上手
虚拟环境管理
创建虚拟环境uv 支持创建虚拟环境,例如,在刚刚创建的 hello-world 项目中的.venv目录下创建一个虚拟环境(默认创建.venv目录):
# 在当前目录创建名为 .venv 的虚拟环境(默认)
uv venv
# 指定 Python 版本创建(需提前安装对应版本,或 uv 自动下载)
uv venv --python 3.11
uv venv 虚拟环境名
使用虚拟环境可以 “激活” 虚拟环境,以便使用其中的包:
macOS 和 Linux:
source .venv/bin/activate
Windows:
.venv\Scripts\activate
停用环境要退出虚拟环境,请使用 deactivate 命令:
deactivate
安装依赖
# 安装单个包(比如 opencv)
uv pip install opencv-python==4.1.0
# 从 requirements.txt 安装
uv pip install -r requirements.txt
创建新项目
可以使用 uv init 命令创建一个新的 Python 项目:
uv init hello-world
cd hello-world
或者,也可以在当前工作目录中初始化一个项目:
mkdir hello-world
cd hello-world
uv init
uv 将创建以下文件:
.
├── .python-version
├── README.md
├── main.py
└── pyproject.toml
用 uv 创建多个不同虚拟环境
方法1:命令行创建(最灵活,推荐)在项目根目录打开终端(PowerShell/CMD),执行以下命令:
# 1. 创建名为 .venv_ct 的环境(用于CT图像处理,Python 3.11)
uv venv .venv_ct --python 3.11
# 2. 创建名为 .venv_ml 的环境(用于机器学习,Python 3.12)
uv venv .venv_ml --python 3.12
- 每个环境都会生成一个独立文件夹:
.venv_ct、.venv_ml
方法2:在 PyCharm 中创建不同环境
- 打开
File → Settings → Project:xxx → Python Interpreter → Add Interpreter - 默认是
项目目录\.venv,改成 项目目录\.venv_你的环境名(比如 .venv_ct)
四、在Pycharm中使用UV虚拟环境
- 打开项目终端,手动创建一个带名字的新环境:
uv venv .venv_ct --python 3.11
- 回到 PyCharm,添加解释器 → 选择现有 → 找到
.venv_ct\Scripts\python.exe。 - 以后需要其他环境时,重复步骤2-3,换个名字即可。
五、总结
- Windows 安装 uv 首选官方一键命令(管理员 PowerShell 执行),网络受限则手动下载二进制包并配置环境变量;
- 安装后核心操作:
uv venv 创建环境 → 激活环境 → uv pip install 装依赖,语法和 pip/venv 兼容; - 常见坑点是环境变量未生效、PowerShell 执行策略限制,按上述方法可快速解决。
常见问题: 激活环境时提示“无法加载文件 ... Activate.ps1,因为在此系统上禁止运行脚本”
- 解决:以管理员身份打开 PowerShell,执行:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
输入 Y 确认,再重新激活环境。