☰
Anaconda安装教程:conda虚拟环境与PyTorch配置指南
2026/9/29 1:13:57 网站建设 项目流程

1. 为什么我至今仍推荐新手从Anaconda起步

每次带新同事或者给学弟学妹做入门指导,第一个绕不开的问题就是"Python怎么装"。很多人第一反应是去官网下个安装包,双击、下一步、装完,然后在命令行敲python发现没反应,或者装完发现pip装包永远卡在下载阶段,再或者项目A要求numpy 1.19、项目B要求numpy 1.24,装来装去把自己电脑搞成依赖地狱。这些坑我全踩过,也正是因为这些经历,我才会在这篇anaconda安装教程里反复强调一件事:对于刚接触Python、或者同时要维护多个数据科学/深度学习项目的人来说,Anaconda依然是目前最省心的起点。

Anaconda本质上是一个"Python发行版 + 包管理器 + 环境管理器"的打包产品。它自带conda这个包和环境管理工具,预装了conda、numpy、pandas、jupyter、scipy等一大堆数据科学常用库,还自带图形化的Anaconda Navigator。你最直观的感受是:装完之后,不用再手动折腾Python本体、不用急着配pip源,直接就能跑起一个Jupyter Notebook做数据分析。这对刚刚入门、还没建立起完整工具链认知的人非常友好。

这套anaconda安装教程面向的人群很明确:Windows和macOS上第一次装Anaconda的同学、以前装过但被环境搞乱想重装的同学、以及准备用conda配置PyTorch或TensorFlow深度学习环境、需要把Anaconda和PyCharm、VSCode打通的开发者。我会从版本选择、下载来源、安装向导每一屏的选择、安装后的验证、镜像源配置、虚拟环境管理,一直讲到与编辑器的联动和常见报错排查,尽量把每个"为什么要这么点"都讲清楚,而不是甩给你一堆截图让你照抄。

2. 安装前的功课:版本、来源与路径规划

2.1 三个发行版本,别选错

现在官网上你能看到的安装包主要分三类,很多人第一次访问anaconda官网就懵了,这里直接给结论。

发行版本体积预装内容适合谁
Anaconda Distribution约500MB~800MB完整科学计算栈新手、数据分析、教学场景
Miniconda约50MB~100MB仅conda和Python老手、容器、CI环境
Miniforge约60MBconda + conda-forge源偏好社区源、M系列芯片用户

我一般的建议是:如果你只是想赶紧跑起来,选Anaconda Distribution;如果你已经清楚自己需要什么包,或者要给Docker镜像瘦身,就用Miniconda。Miniconda安装逻辑和Anaconda几乎一模一样,学会一个另一个也会了。至于Miniforge,它在Apple Silicon和部分科研场景下更顺手,因为它默认绑定conda-forge这个社区源,包更新往往比官方源快。

2.2 从哪下载:官方源慢就换镜像

下载速度是新手遇到的第一个心理门槛。海外官方源在国内下载,慢的时候几十KB每秒,几百MB的包要下到你怀疑人生。这时候可以走国内高校和企业提供的镜像站,比较常用的有清华TUNA镜像和国内一些云厂商的镜像。访问镜像站的方式很简单:浏览器打开镜像站的anaconda目录,进入archive子目录,里面按版本时间排列了所有历史安装包。

需要重点提醒的是:镜像站上的安装包和官方源是同一份文件,只是放在国内服务器上加速,校验哈希值是一致的,安全上没有区别。下载前务必看清楚文件名里的系统标识和架构,比如Anaconda3-2024.xx-Windows-x86_64.exe是Windows 64位,MacOSX-arm64.pkg是苹果M系列芯片用的,Linux-x86_64.sh是Linux脚本版。下错架构是最常见的低级错误,装到一半报"不兼容",又得重来一遍。

注意:优先选择版本发布日期较近、但又不是当天刚出的包。太新的版本偶尔会有包兼容问题,选发布一两个月、下载量稳定的版本最稳妥。

2.3 安装路径:这三个坑一定要避开

在正式点安装之前,先把目标路径想清楚。我见过太多人因为路径没选好,后面conda各种诡异报错。

  • 路径里不要有中文和空格。C:\Users\张三\Anaconda3这种看着没问题,但conda和部分包的构建脚本对中文路径处理很差,容易在编译或链接阶段炸掉。老老实实用纯英文路径。
  • 不要装在系统盘的Program Files下。这个目录权限特殊,conda创建环境和写文件时经常碰到权限拒绝,尤其是用非管理员身份运行时。默认装到用户目录下的Anaconda3反而是最省事的。
  • 给后续环境留足空间。一个完整的深度学习环境(PyTorch + CUDA运行时)动辄5~10GB,如果你打算建好几个环境,C盘至少要留出30GB以上余量。空间紧张的话,可以后续把环境的缓存和包目录迁移到其他盘,这部分我在第五章细讲。

想清楚这三点之后,我们就可以开始正式安装了。

3. Windows平台安装Anaconda的完整步骤

3.1 安装向导逐屏拆解

双击下载好的.exe文件(如果弹出用户账户控制提示,点"是"),进入安装向导。前面几屏是许可协议和选择安装类型,一路Next就行。真正需要你动手做决策的是下面这几屏。

第一屏"Choose Install Location"(选择安装位置),默认会给你一个用户目录下的路径。如果你C盘空间够,直接用默认即可;如果不够,改成其他盘的纯英文路径,比如D:\Anaconda3。改完之后那一串路径里不能有中文、不能有空格,再确认一遍。

第二屏是通用选项页,通常没有特别的勾选,继续即可。第三屏才是关键,它叫"Advanced Options",里面有两个复选:

  • Add Anaconda3 to my PATH environment variable(把Anaconda加入PATH环境变量)
  • Register Anaconda3 as my default Python 3.x(注册为系统默认Python)

勾选项的选择逻辑,直接看下一小节。

3.2 两个勾选框到底勾不勾

这是整个anaconda安装教程里被问到最多的问题,我明确给结论。

Add to PATH这一项,官方默认不勾,我也建议新手不要勾。原因不是它不好,而是它会让conda和系统里其他Python(比如你以前装的、或者某些软件自带的Python)抢PATH。一旦冲突,命令行敲python到底调用哪个就变得不确定,排查起来很痛苦。正确做法是不勾PATH,然后通过开始菜单里的"Anaconda Prompt"这个专门终端来使用conda。Anaconda Prompt启动时会自动帮你激活base环境、配好路径,是最干净的用法。

Register as default Python这一项,建议勾上。它会把Anaconda的Python注册成系统的默认Python关联,好处是你双击.py文件、或者某些IDE自动探测解释器时,能直接找到Anaconda里的Python,省去手动配置的麻烦。

那有同学会问:用了Anaconda Prompt,普通cmd或者PowerShell里就不能用conda了吗?其实也可以,后面第四章我们会用conda init把conda接进PowerShell,这样你常用的终端也能用,而且接入方式是官方推荐、比手动改PATH干净得多。

3.3 装完后的第一件事:验证

安装进度条走完,最后会有一个"Learn more about Anaconda Cloud"的页面,取消勾选直接Finish。然后从开始菜单找到"Anaconda Prompt"(或者"Anaconda PowerShell Prompt")打开,逐条敲下面的命令验证。

conda --version python --version conda info

正常的话,第一条会输出类似conda 24.x.x,第二条输出Python 3.1x.x,第三条会打印一大段环境信息,包括base环境路径、conda版本、平台、channels等。三条都通了,说明安装本身没问题。

conda list

这条会列出当前base环境里预装的所有包。如果连这个都能正常输出几百行包名,那恭喜你,Anaconda已经在你的机器上稳稳跑起来了。接下来要做的,是让它跑得更快、更符合你的使用习惯。

4. 让conda真正好用:镜像源与核心配置

4.1 为什么一定要换源

conda默认从官方源拉包,服务器在海外,国内访问经常慢到超时,装一个大包要等半小时是常事,更糟的是有时候等到一半报CondaHTTPError,白等。所以装完Anaconda的第二件事,就是配置国内镜像源。这不是可选项,而是必做项。

国内比较主流的镜像站提供的conda源,覆盖了主channel、free、main、r、msys2、pytorch、conda-forge等常用仓库。配置方式一种是命令行直接添加,另一种是手写配置文件.condarc。我更推荐后者,因为一次写清楚所有源,而且换机器时可以直接复制这个文件过去,非常方便。

4.2 手写.condarc配置文件

.condarc是conda的全局配置文件,Windows上一般位于C:\Users\你的用户名\.condarc。如果这个文件不存在,用Anaconda Prompt执行下面的命令生成(先执行conda config --set show_channel_urls yes,然后编辑生成的文件),或者直接用文本编辑器手动创建。

内容大致如下(以清华镜像为例,实际写的时候把域名替换成你要用的镜像站):

channels: - defaults show_channel_urls: true default_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 custom_channels: conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud nvidia: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud ssl_verify: true

保存之后执行conda clean -i清一下索引缓存,然后conda info确认channel已经变成镜像地址,就配置成功了。这里有个细节:配置完成后第一次装包会稍微慢一点,因为要重新拉索引,之后就快了。

提示:镜像源偶尔会同步延迟或者临时故障。如果某个包在镜像上找不到,可以临时用-c参数指定官方源装上,比如conda install -c https://repo.anaconda.com/pkgs/main 包名,但平时不要长期这么用。

4.3 conda高频命令速查

配置好了源,接着把常用命令混个脸熟。日常80%的操作就下面这些:

命令作用
conda create -n env_name python=3.10创建指定Python版本的虚拟环境
conda activate env_name激活环境
conda deactivate退出当前环境
conda env list查看所有环境及其路径
conda install 包名在当前环境安装包
conda remove -n env_name --all删除整个环境
conda update conda更新conda本体
conda list列出当前环境已装包

一个很实用的习惯是:每次动手装东西之前,先conda env list确认自己在哪个环境。我见过太多次"为什么我装了这个包还是import不到",结果发现是在base环境装的,代码却在自定义环境里跑。养成先确认环境的习惯,能省掉大量无谓排查。

5. 虚拟环境管理:把项目依赖彻底隔离

5.1 从创建到删除的完整流程

虚拟环境是Anaconda最有价值的部分,没有之一。它的作用就是给每个项目一个独立的包目录,A项目用numpy 1.19,B项目用1.24,互不影响,卸载项目直接删环境就行,不污染全局。

完整操作流程如下。先创建一个专门做数据分析的环境,指定Python版本:

conda create -n data_analysis python=3.10 -y

-n后面是环境名,只能是英文数字下划线;python=3.10明确指定版本,避免默认装太新的版本导致某些包不兼容;-y是自动确认,省得一路敲y。

创建完激活它:

conda activate data_analysis

激活后命令行提示符前面会出现(data_analysis),这就是环境标识。在这个状态下用conda install pandas或者pip install requests装的包,全都只进这个环境。用完了退出:

conda deactivate

想彻底清掉某个环境:

conda remove -n data_analysis --all

这里提醒一点,conda remove只删环境不删包缓存。长期使用后缓存会越攒越大,定期用conda clean --all清理一下,能释放好几GB空间。

5.2 环境导出与跨机器复现

团队协作或者换电脑的时候,最怕的是"我这边能跑你那边报错",本质就是环境不一致。conda提供了环境导出机制,能把你当前环境的包清单和版本全部记录下来:

conda env export > environment.yml

这个yml文件里包含了所有包及精确版本,甚至包括Python版本和channel信息。对方拿到后执行:

conda env create -f environment.yml

就能一键复现出几乎一模一样的环境。不过conda env export导出的文件包含了构建号(build string),在跨平台(比如Windows导给Linux用)时可能装不上。

conda env export --no-builds > environment.yml

这条去掉了构建号,跨平台兼容性更好。还有一种做法是只导出你手动装的核心包,用conda env export --from-history,文件更精简,复现时让conda自己去解析依赖。

5.3 环境太大?把目录迁到别的盘

如果你的环境建了一堆,C盘快撑爆,可以把conda的包缓存和环境目录整体迁到其他盘。核心思路是修改.condarc里的envs_dirs和pkgs_dirs两个配置项,指向空间充裕的盘。

envs_dirs: - D:\conda\envs pkgs_dirs: - D:\conda\pkgs

配置好之后新建的环境就会落到新目录,包缓存下载到新位置。已有的老环境要么重建,要么手动搬过去再改配置,重建其实更省事,正好借机把没用的环境清一清。这是很多人不知道的一个技巧,能把C盘从爆红状态救回来。

6. 实战:用conda配置PyTorch深度学习环境

6.1 动手之前先确认显卡和驱动

配置PyTorch环境是最容易翻车的环节,翻车的根源通常是CUDA版本和显卡驱动不匹配。所以第一步不是敲安装命令,而是查清楚两件事。

在命令行输入nvidia-smi(前提是装了NVIDIA驱动),输出里会看到类似CUDA Version: 12.1的字样。注意,这个指的是你的驱动最高支持的CUDA版本,不是你系统里装的CUDA工具包版本。你要装的PyTorch所用的CUDA版本必须小于等于这个值。比如驱动支持12.1,那你装CUDA 11.8或12.1版本的PyTorch都没问题。

如果你用AMD显卡或者Mac,那就走CPU版本或者MPS(苹果GPU加速)路线,安装命令不一样,别硬套CUDA版本。

6.2 创建独立环境并安装PyTorch

深度学习环境一定一定不要装在base里,因为PyTorch和CUDA相关包体积巨大、依赖复杂,一旦搞乱base,整个conda都会变得奇怪。先建一个干净的环境:

conda create -n pytorch_env python=3.10 -y conda activate pytorch_env

然后去PyTorch官网的"Get Started"页面,按你的系统、包管理器(选conda)、CUDA版本勾选,它会生成一条命令。假设是CUDA 11.8版本,命令大概长这样:

conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

前面配置了镜像源的话,可以把-c pytorch -c nvidia去掉,让它走镜像加速;如果镜像同步不全,再补上-c参数走官方源。安装过程几分钟到十几分钟不等,耐心等它解析依赖,别中途关掉。

6.3 验证:装完不等于能用

安装命令跑完亮起Done,不代表它真的能用。很多人到这一步就以为大功告成,结果代码一跑报CUDA out of memory或者直接找不到GPU。所以一定要做最后验证。在激活了环境的终端里启动Python:

import torch print(torch.__version__) print(torch.cuda.is_available()) print(torch.cuda.get_device_name(0))

第一条打印PyTorch版本,第二条必须输出True(说明能调用GPU),第三条打印显卡型号。如果第二条是False,八成是CUDA版本不匹配或者装成了CPU版本,回上一步重新确认版本。这一步验证花不了两分钟,但能帮你省掉后面几小时的调试。

注意:torch.cuda.is_available()返回False时,按顺序排查——驱动版本是否过旧、安装命令里的CUDA版本是否超过驱动支持上限、环境里是否混入了CPU版torch。三个都排掉基本就通了。

7. 打通编辑器:PyCharm与VSCode绑定conda环境

7.1 PyCharm里指定conda解释器

环境建好了,代码还得在IDE里写。PyCharm配置conda环境的关键,是让它找到你那个环境里的Python解释器。

打开PyCharm,进入File→Settings→Project: 项目名→Python Interpreter,点右上角齿轮选Add。在弹窗左侧选Conda Environment,然后Use existing environment,在下拉框里找到你创建的环境(比如pytorch_env),或者手动指定Interpreter路径,一般是D:\Anaconda3\envs\pytorch_env\python.exe。

一个常见坑:PyCharm新建项目时如果自动创建了一个虚拟环境(venv),你可能在这个venv里装了包,但跑代码时用的是conda环境,结果import失败。解决办法是明确切换解释器,让项目和conda环境一一对应,别混着用。

7.2 VSCode里切换解释器

VSCode的思路轻量得多,但依赖它自己去扫描环境。装上Python扩展后,按Ctrl+Shift+P打开命令面板,输入Python: Select Interpreter,列表里会列出conda的所有环境,选你需要的那个即可。

如果列表里没有你刚建的环境,重启一下VSCode,或者在设置里把python.condaPath指向Anaconda的condabin\conda.bat。VSCode底部状态栏会显示当前解释器路径,随时能看到自己用的是哪个环境,这点比PyCharm直观。建议每个项目根目录下放一个.vscode/settings.json写死解释器路径,团队成员打开就是同一个环境。

7.3 Jupyter里注册conda环境

用Jupyter Notebook做数据分析的话,需要把conda环境注册成Jupyter的内核,否则你打开的notebook默认跑的是base环境,装了包的conda环境反而用不上。激活目标环境后执行:

conda activate data_analysis pip install ipykernel python -m ipykernel install --user --name=data_analysis --display-name "Python (data_analysis)"

装完重启Jupyter,在Kernel→Change kernel里就能看到你可爱的环境了。--display-name是你在Jupyter界面里看到的名字,取个好认的。这个操作很多人不知道,结果在notebook里import pandas老是找不到,其实就是内核没切对。

8. 常见报错与排查速查表

8.1 命令找不到与环境变量问题

新手最频繁遇到的就是"conda不是内部或外部命令"。原因基本两种:一是在普通cmd里直接敲conda,而conda没进PATH;二是装了但环境变量没配。正确解法是回到Anaconda Prompt里操作,或者执行一次conda init powershell,然后重启终端。conda init会帮你把初始化脚本写进对应shell的配置文件,比手动改PATH干净且可逆。

如果发现conda init之后终端启动变慢,可以在配置里关闭base环境自动激活:conda config --set auto_activate_base false,需要时再手动conda activate。

8.2 下载卡住与包解析过慢

换源之后下载还是慢,或者卡在Solving environment转圈半天,这也有应对方法。首先是换用更快的解析器——新版conda已经默认带上libmamba这个C++实现的解析器,速度比老的Python解析器快很多。可以显式指定:

conda install 包名 --solver=libmamba

其次,尽量不要一次性安装一大堆包让它同时解析,可以分开装。还有就是定期conda clean -i清索引缓存,索引出问题时它也会导致卡顿。如果pip装包慢,同样可以配国内PyPI镜像,在用户目录建pip\pip.ini写下index-url即可。

8.3 环境激活失败与其他疑难

现象可能原因处理
activate后提示符没变化未初始化shell执行conda init后重启终端
import包成功但IDE报红IDE解释器未指向该环境检查IDE解释器设置
环境名显示正常但pip装错地方pip指向系统Python用python -m pip install
创建环境报SSL错误证书或镜像异常切镜像或临时ssl_verify: false
conda命令一直转圈索引缓存损坏conda clean -i后重试

几个救急命令记一下:conda update conda更新本体;conda update --all更新当前环境所有包;conda clean --all清理缓存;环境彻底坏了就conda remove -n 环境名 --all重建,别跟它死磕。重建一个环境往往比修它快得多,这是我多年的一条血泪经验。

9. 卸载与重装:干净收尾的正确姿势

9.1 标准卸载流程

有人装完发现选错了盘或者版本不对,想重来。Windows上正规的卸载方式是先通过Anaconda自带的卸载程序,一般在Anaconda安装目录下的Uninstall-Anaconda3.exe,双击运行。也可以从系统的"应用和功能"里找到Anaconda点卸载。

卸载前如果还有想保留的自定义环境,先用conda env export导出成yml,重装后再conda env create -f恢复,这样不用重新装包。卸载过程如果报"文件被占用",先关掉所有Anaconda相关的终端、Jupyter进程,必要时重启再卸。

9.2 残留清理与重装建议

卸载程序跑完不代表干净,用户目录下还会留下.conda、.condarc、.anaconda等配置和缓存目录,以及安装目录里可能残留文件。想彻底重装的话,把这几个目录手动删掉再重来,能避免"新装的Anaconda读到了旧配置"这种奇怪问题。

重装时我的建议是:优先考虑装到非系统盘、纯英文路径;装完第一时间换镜像源;然后按项目建环境,别什么都往base塞。这三条做到,你的Anaconda基本就不会再出大问题了。

我自己的使用体会上,Anaconda的价值从来不在"装好Python"这一步,而在于它提供了一套可复现、可隔离、可迁移的环境管理方式。刚开始你可能觉得conda命令有点啰嗦,但当你同时维护三个用着不同框架版本的项目、又需要和团队对齐环境时,就会明白这套东西省下来的是成倍的时间。装完别停,先把镜像配好、建好项目环境、打通你的编辑器,这一整套跑下来,才算真正把Anaconda用起来了。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询