(2026保姆级)Python安装UV虚拟环境搭建(项目,环境分离)
下一代Python虚拟环境与包管理工具实战指南
作者:tudou_yu
发布日期:2026-08-02
操作系统:Windows
适用场景:使用UV快速创建Python虚拟环境,并配置PyCharm进行项目开发
uv环境管理工具
对于python环境中三方包依赖冲突的情况,以及安装新包因为依赖导致旧包版本发生变化的情况,uv作为新一代的python环境管理工具,挺身而出。无论是python自带的venv,还是著名的conda,都无法从根本上直接做到【新包不碰旧包、间接依赖不会被卸载】的效果,uv做到了:
-
原有已安装包版本固定不变;新包会自动匹配能兼容当前所有旧包的最高正式版本;只有在执行
uv lock --upgrade命令时,才会全局升级所有包到各自最高兼容版本。 -
依赖包的依赖不能直接被卸载,只有卸载直接依赖、且间接依赖不被其他依赖所依赖的时候,间接依赖才会被一起自动卸载。
一、安装UV
以window CMD终端为例,用uv搭建python虚拟环境,首先要安装uv,注意请用当前全局的python(非虚拟环境)来安装 uv【如果已经安装了uv,跳过本步骤】
cmd终端
安装uv虚拟环境包管理工具【代替pip和虚拟环境】
pip install uv -i https://mirrors.aliyun.com/pypi/simple/
验证安装:
# 查看uv版本
uv -V

二、初始化项目
在你想存放虚拟环境的文件夹中打开CMD(例如 D:\All_Projects\test_venv),然后执行初始化命令:


uv init --name myproject
--name myproject 是自定义项目名称,由于我们做项目与环境分离部署,项目名称可随意指定。
初始化后,目录下会生成以下文件:


-
pyproject.toml—— 项目配置文件 -
README.md—— 项目说明文件 -
(后续会生成
.venv和uv.lock)
三、配置镜像源
打开 pyproject.toml 文件,在末尾添加以下内容,指定阿里云镜像源:

[tool.uv]
index-url = "https://mirrors.aliyun.com/pypi/simple/"
这样后续安装三方包时会快很多。
四、创建虚拟环境
锁定Python版本:
uv python pin 3.10.20
创建虚拟环境:
uv venv --clear
uv sync

执行完成后,当前目录下会生成:

-
.venv/—— 虚拟环境目录 -
uv.lock—— 依赖锁定文件
虚拟环境的Python解释器路径为:.venv\Scripts\python.exe
五、安装三方包
注意:所有 uv add 命令必须在包含 pyproject.toml 的目录下执行。
安装单个包
uv add langchain==1.3.10
UV会自动解析并安装所有依赖。

安装setuptools(项目可能不用,但PyCharm这个软件必需)
uv add setuptools==79.0.1

⚠️ 特别提醒:PyCharm解析Python环境依赖 setuptools,建议使用 79.0.1 版本,过高版本可能导致PyCharm无法识别。
六、批量安装依赖
在 pyproject.toml 同级目录下创建 requirements.txt,内容示例:
langchain-openai==1.3.3
langchain-mcp-adapters==0.3.0
fastmcp==3.4.2
python-a2a==0.5.4

然后执行批量安装:
uv add -r requirements.txt

UV会智能处理依赖关系,新包不会影响已安装的旧包。
七、配置PyCharm
-
打开 PyCharm → Settings → Project → Python Interpreter
-
点击齿轮图标 → Add
-
选择 Existing environment
-
浏览并选择虚拟环境中的解释器:

配置完成后,PyCharm即可使用该虚拟环境中的所有依赖包。
八、最终目录结构
D:\All_Projects\test_venv/
├── .venv/ # 虚拟环境目录
│ └── Scripts/
│ └── python.exe
├── pyproject.toml # 项目配置
├── uv.lock # 依赖锁定
├── requirements.txt # 依赖清单
└── README.md
结语
到此,UV虚拟环境已全部搭建完成。后续开发只需在PyCharm中选择该解释器即可。
UV的优势在于:
-
⚡ 极快的安装速度
-
📦 统一的
pyproject.toml管理 -
🔒 精准的依赖锁定(
uv.lock) -
🧹 清晰的虚拟环境隔离
赶快试试吧,告别 pip + venv 的繁琐组合,拥抱更高效的开发体验!
📌 本文首发于 CSDN,转载请注明出处。
如有问题,欢迎在评论区交流讨论。
更多推荐


所有评论(0)