一文详细说明Python官方包、Conda、uv应该怎么选的重点在于把前置条件、操作顺序和容易误判的地方分清楚。
一句话总结:入门学习选官方,深度学习选 Conda,工程开发选 uv。
| 维度 | python.org 官方安装 | Anaconda / Miniconda | uv (Astral) |
|---|---|---|---|
| 定位 | 标准发行版 | 数据科学发行版 + 包管理 | 极速 Python 包管理器 |
| 包管理器 | pip + venv | conda + pip | uv(内置 pip 兼容) |
| 虚拟环境 | venv | conda env | uv venv |
| 安装速度 | 中等(pip 串行下载) | 较慢(conda 解析依赖慢) | 极快(并行下载 + Rust 编写) |
| Python 版本管理 | ❌ 不支持(全局单一版本) | ✅ 支持多版本 | ✅ 支持多版本 |
| 二进制包 | 需编译(部分) | 预编译(科学计算友好) | 预编译 wheel |
| 典型场景 | 教学、通用开发 | 深度学习、CV、数据科学 | 后端开发、CI/CD、现代工程 |
| 磁盘占用 | 小 | 大(Anaconda ~3GB) | 小 |
| 多项目版本隔离 | 仅靠 venv(Python 版本固定) | conda env 隔离 | uv python install + uv run |
特点:
pip 安装包,venv 管理虚拟环境适用人群:
安装步骤:
本文只讲述Windows系统上的安装
首先先来到python官网Welcome to Python.org
鼠标悬浮到Downloads,选择版本后开始下载,这里一般都是最新的稳定版

下载后安装,注意要勾选 Add Python to PATH,选择安装路径,这里就不再赘述
日常使用:
# 创建虚拟环境(但 Python 版本固定为你全局安装的那个)python -m venv .venv# 激活source .venv/bin/activate # macOS/Linux.venvScriptsactivate.bat # Windows CMD# 安装依赖(pip 是串行下载,大项目很慢)pip install -r requirements.txt# 退出deactivate
为什么不能做版本管理?
venv只是复制当前 Python 解释器到一个隔离目录,它不能安装另一个版本的 Python。如果你全局装的是 3.11,venv创建出来的环境也只能是 3.11。想要 3.10 和 3.13 共存,必须借助外部工具。
特点:
conda create -n py310 python=3.10 一条命令搞定,A 项目用 3.10、B 项目用 3.13 完全没问题conda 可以管理 Python 版本和系统级依赖(如 CUDA、MKL)适用人群:
安装步骤:
本文只讲Windows的安装
我们来到anaconda3的官网,当然我推荐使用清华源,不然下载太慢了,这里给出安装包列表链接miniconda,或者你想用anaconda3anaconda3,注意要认准anaconda3,不要下到anaconda1或者2了
日常使用:
# ✅ 创建环境并指定 Python 版本(版本管理核心能力)conda create -n project-a python=3.10conda create -n project-b python=3.13# 激活不同环境conda activate project-a # Python 3.10conda activate project-b # Python 3.13# 安装深度学习框架(conda 会自动处理 CUDA 依赖)conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia# 导出环境conda env export > environment.yml
特点:
uv sync 会异步并行下载项目中的多个依赖包,而 pip 和 conda 都是串行或半串行下载,大项目差距尤其明显uv python install 3.10 3.11 3.12 一键安装多版本,项目之间完全隔离requirements.txt 和 pyproject.toml适用人群:
安装步骤:
# macOS / Linuxcurl -LsSf https://astral.sh/uv/install.sh | sh# Windowspowershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
日常使用:
# ✅ 安装多个 Python 版本(版本管理)uv python install 3.10 3.11 3.12 3.13# 查看已安装版本uv python list# 创建项目并指定 Python 版本uv init my-project --python 3.11cd my-project# 添加依赖(自动写入 pyproject.toml)uv add fastapi sqlalchemy# ✅ uv sync:并行异步下载所有依赖,生成 uv.lock 锁定文件# 相比 pip install -r requirements.txt(串行下载),速度快数倍uv sync# 运行脚本(自动使用项目指定的 Python 版本和虚拟环境)uv run python main.py# 指定不同版本运行uv run --python 3.10 python script.py
uv 的核心优势 —— 并行下载实测对比:
# 假设项目有 50+ 个依赖pip install -r requirements.txt # 串行下载,逐个排队,可能 2-5 分钟conda install --file requirements.txt # 解析依赖慢,下载也慢uv sync # 并行异步下载,通常 10-30 秒
uv 的下载器会同时发起多个 HTTP 请求,充分利用带宽。对于依赖众多的后端项目(如 Django + Celery + Redis + PostgreSQL 驱动等),uv sync 的体验是碾压级的。
你的场景是什么?│├─ 学习 Python 基础 / 学校课程 ──────► python.org 官方 + venv│ └─ ⚠️ 注意:只能用一个 Python 版本,无法多版本并存│├─ 深度学习 / CV / NLP / 科研 ───────► Miniconda(必选项)│ └─ 需要 PyTorch + CUDA 环境,且需要多版本 Python│├─ 后端开发 / Web / API / 微服务 ────► uv(强烈推荐)│ └─ 并行下载快、多版本管理、CI/CD 友好│├─ 数据分析 / Jupyter Notebook ─────► Miniconda 或官方 + pip│└─ 快速脚本 / 临时任务 ─────────────► uv(无需全局安装 Python)
| 需求 | 官方 pip | Anaconda | uv |
|---|---|---|---|
| A 项目 Python 3.10,B 项目 Python 3.13 | ❌ 做不到 | ✅ conda create -n a python=3.10 | ✅ uv init --python 3.10 |
| 同时安装多个 Python 版本 | ❌ 需 pyenv 辅助 | ✅ 原生支持 | ✅ uv python install |
| 切换版本 | ❌ | conda activate | uv run --python |
关键结论:如果你需要多个项目使用不同 Python 版本,官方安装包 +
venv是走不通的,必须选择 Anaconda 或 uv。
很多开发者会组合使用:
# 方案:Miniconda 管理数据科学环境,uv 管理工程环境# 1. 深度学习环境(conda 管 CUDA + Python 版本)conda create -n torch python=3.11conda activate torchconda install pytorch torchvision pytorch-cuda=12.1 -c pytorch -c nvidia# 2. 后端 API 环境(uv 管依赖 + 并行下载)mkdir my-api && cd my-apiuv init --python 3.12uv add fastapi uvicornuv sync # 并行下载,秒级完成uv run uvicorn main:app
| 坑点 | 说明 | 解决方案 |
|---|---|---|
| 官方安装无法多版本 | 全局只有一个 Python,所有项目共享 | 改用 uv 或 Anaconda 做版本管理 |
| Conda 与 pip 混用 | 先用 conda 装包,再用 pip 装,可能破坏依赖 | 优先 conda install,确实没有的再用 pip |
| uv 的 Python 管理 | uv 可以自动下载 Python,但可能与你系统 Python 冲突 | 使用 uv python install 明确管理,不污染系统 |
| Anaconda 体积爆炸 | 基础安装就 3GB+ | 改用 Miniconda,按需安装 |
| pip 串行下载慢 | 大项目依赖多,pip 逐个下载极慢 | 改用 uv sync,并行异步下载 |
| CUDA 版本不匹配 | PyTorch 与系统 CUDA 版本不一致 | 用 conda 安装 pytorch-cuda,让 conda 自动匹配 |
| 你的身份 | 推荐方案 | 原因 |
|---|---|---|
| 刚学 Python 的大学生 | 官方 python.org + venv | 理解原理最重要,但要知道它不能管理 Python 版本 |
| 做深度学习/计算机视觉 | Miniconda | CUDA 环境管理 + 多版本 Python 无可替代 |
| 后端/全栈工程师 | uv | 并行下载极速 + 原生多版本管理,2024 年后新项目的最佳选择 |
| 需要多项目多版本并存 | uv 或 Anaconda | 官方安装做不到 |
| 老项目维护 | 保持原有工具链 | 别折腾 |
工具没有绝对的好坏,只有场景的差异。版本管理能力和下载安装速度是两个最容易被忽视但实际影响巨大的决策因素。理解每种工具的设计哲学,才能在正确的场景做出正确的选择。
参考链接
- Python 官方:www.python.org/downloads/
- Miniconda:docs.conda.io/projects/mi…
- uv 文档:docs.astral.sh/uv/
- 清华源:mirrors.tuna.tsinghua.edu.cn/