简介:这份文档面向刚接触 Python 数据分析与深度学习环境的初学者,聚焦 Anaconda 与 PyCharm 的安装、验证及编译器配置流程,帮助读者解决环境搭建与第三方库调用中的常见困惑。资源包共 1 个 docx 文件,约 4.22MB,以图文步骤形式记录安装与配置要点,便于边看边操作。内容覆盖 Anaconda 安装后的 conda list 验证、借助清华镜像用 pip 安装 OpenCV、TensorFlow、Keras 等库,以及在 PyCharm 中将 Anaconda 环境设为项目解释器的完整路径。读者可据此快速搭好可运行的数据处理与机器学习开发环境,减少镜像源选择、解释器定位等环节的试错成本,适合作为入门阶段的实操参照。目前已有 6952 人学习下载。
1. 装完 Anaconda 却跑不动 TensorFlow:问题多半不在库本身
上周帮一位做图像识别的同学看环境,他机器上 Anaconda 装了、PyCharm 也装了,pip install tensorflow敲下去终端刷了一屏 Successfully installed,结果在 PyCharm 里import tensorflow直接红一片。折腾一下午,最后发现是 PyCharm 用的还是系统自带的 Python,压根没指向 Anaconda 那个解释器。这种翻车在 Anaconda + PyCharm 这套组合里太常见了——装是装上了,但「装在哪、谁来用、怎么验证」三件事没串起来,环境就等于没配。
这篇笔记按我自己的习惯走一遍完整链路:Anaconda 装好并验证、用 conda 和 pip 补库(OpenCV、TensorFlow、Keras 这些)、PyCharm 装完把解释器指到 Anaconda 的python.exe,最后给一套装完能自检的办法。适合刚上手深度学习环境的新手照着抄,也适合已经装过但被版本和解释器坑过的熟手对照排查。
2. 装 Anaconda 与验证:从安装包到 conda list 跑通
2.1 版本选择与安装包落地
Anaconda 的安装包分两个大版本线:带 Python 3.x 的常规版和带 Python 2.7 的旧版。现在新项目基本都走 Python 3,直接下 Python 3 对应的安装包就行,别为了迁就某个老教程去装 Python 2 的版本,后面 TensorFlow 一装就报兼容错。安装包体积不小,下载完先核对一下文件大小和来源,别拿到半截包就双击。
安装过程本身没什么技术含量,一路 Next 等加载完即可。真正需要留意的是最后一页的两个勾选项:一个是「Add Anaconda to my PATH environment variable」,一个是「Register Anaconda as my default Python」。原文的说法是这两个取消勾选也无所谓,勾选会打开浏览器。我的做法是两个都不勾,原因很实际——把 Anaconda 塞进系统 PATH 会和机器上已有的 Python 打架,后面在命令行里python到底指向谁就变成玄学;不注册为默认 Python 则能保住系统原有解释器,需要时用 Anaconda Prompt 显式进入环境,边界清楚。
安装路径建议保持默认,或者至少不要带中文和空格。我见过装在D:\我的软件\anaconda3下面的,后面 pip 装包时路径解析出问题,报错信息还特别隐晦,排查半天才发现是路径的锅。默认路径一般是C:\Users\用户名\anaconda3,用户名是中文的话也建议换到纯英文路径,比如D:\anaconda3。
2.2 用 Anaconda Prompt 验证安装
装完之后不要急着开 PyCharm,先在 Anaconda 自己的命令行里确认环境是活的。从开始菜单找到 Anaconda3 文件夹,打开里面的Anaconda Prompt(注意不是系统的 cmd),输入:
conda list这条命令会列出当前环境里所有已安装的包,包括包名、版本号、构建渠道。只要终端能刷出一大串包名(numpy、pandas、scipy 这些基础科学计算库通常都在),就说明 Anaconda 本体装好了、conda 命令可用、环境元数据完整。如果提示'conda' 不是内部或外部命令,说明你开的不是 Anaconda Prompt,或者安装时路径被改坏了,回到开始菜单重新找 Anaconda Prompt 入口。
顺手再确认一下 Python 版本:
python --version conda --version两条命令分别给出解释器版本和 conda 版本。记下这两个号,后面装 TensorFlow 选版本时要对得上——比如 TensorFlow 1.13.1 对 Python 3.7 是友好的,但对 Python 3.11 就不行。这一步看着简单,却是后面所有库能不能装上的前提。
2.3 conda 与 pip 的分工
很多人一上来就pip install,其实 Anaconda 环境里有两个包管理器:conda 和 pip。conda 管的是跨语言的二进制包,能连带处理底层依赖(比如某些需要编译的库);pip 管的是 PyPI 上的纯 Python 包,覆盖面更广。常见做法是:基础科学计算库优先用 conda 装,PyPI 上才有的或者版本更新快的(TensorFlow、OpenCV 这类)用 pip 装。
两者混用不是不行,但要避免同一个包被两边各装一份,导致版本冲突。我一般会先用conda list看一眼目标包在不在,在的话就不重复装;不在再用 pip 补。这个习惯能省掉不少「明明装了却 import 不到」的怪问题。
3. 补装 OpenCV、TensorFlow、Keras:pip 命令与镜像源配置
3.1 pip install 的基本写法与镜像源
在 Anaconda Prompt 里装额外库,核心命令就一条:
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple库名换成你要装的东西,比如opencv-python、tensorflow、keras。-i后面跟的是镜像源地址,这里用的是清华的 PyPI 镜像,作用是加快下载速度——默认源在国内拉大包经常慢到怀疑人生,加镜像基本是标配操作。原文里特意强调了「加上这个下载速度会变快」,这点确实是血泪经验,尤其是 TensorFlow 这种几百 MB 的包。
需要指定版本时,用双等号锁版本:
pip install tensorflow==1.13.1 -i https://pypi.tuna.tsinghua.edu.cn/simpletensorflow==1.13.1表示精确安装 1.13.1 这个版本,不写版本号则默认拉最新版。这里有个取舍:最新版功能全但可能和你现有的 Python 版本、CUDA 驱动不匹配;锁老版本稳定但可能缺新特性。做课程作业或复现老项目时,优先按项目要求锁版本,别盲目追新。
3.2 三个常用库的安装与验证
按原文的场景,最常补的是这三个:
# 计算机视觉库,装 opencv-python 而不是 opencv pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple # 深度学习框架,按需锁版本 pip install tensorflow==1.13.1 -i https://pypi.tuna.tsinghua.edu.cn/simple # 高级神经网络 API,通常跟 TensorFlow 配套 pip install keras -i https://pypi.tuna.tsinghua.edu.cn/simple注意 OpenCV 的包名是opencv-python,不是opencv,写错了会提示找不到包。Keras 现在多数场景已经被 TensorFlow 内置的tf.keras取代,但如果老代码里写的是from keras.models import Sequential,还是得单独装一份。
装完不要只看终端那行 Successfully installed 就完事,回到 Python 里实际 import 一次才算数:
python -c "import cv2; print(cv2.__version__)" python -c "import tensorflow as tf; print(tf.__version__)"第一条能打印出 OpenCV 版本号,第二条能打印出 TensorFlow 版本号,说明库不仅装上了,还能被当前解释器正常加载。如果 import 时报ModuleNotFoundError,八成是装到了别的环境里;报 DLL 相关的错,通常是版本和系统架构不匹配(32 位 Python 装 64 位包之类)。
3.3 装库时的版本匹配原则
TensorFlow 对 Python 版本有硬性要求,装之前先对一下。比如 TensorFlow 1.13.1 适合 Python 3.5~3.7,你拿 Python 3.11 去装必然失败。遇到这种情况有两条路:一是用 conda 建一个指定 Python 版本的虚拟环境,二是换一个和当前 Python 匹配的 TensorFlow 版本。
建虚拟环境的命令长这样:
# 创建一个名为 tf113、Python 版本为 3.7 的环境 conda create -n tf113 python=3.7 # 激活该环境 conda activate tf113-n tf113是环境名,python=3.7指定解释器版本。激活后所有 pip 安装都落在这个环境里,和 base 环境隔离,装坏了直接conda env remove -n tf113删掉重来,不影响主环境。这个「后悔药」机制建议每个做深度学习的人都用起来,比在 base 环境里反复折腾安全得多。
4. 装 PyCharm 并指向 Anaconda 解释器:解释器配置的完整路径
4.1 PyCharm 安装与首次初始化
PyCharm 分专业版和社区版,社区版免费且对纯 Python 开发够用,做深度学习也不需要专业版的功能,直接下社区版即可。安装过程基本一路默认,选好安装目录、勾选创建桌面快捷方式,最后点 Finish 就装好了。首次打开会走一遍初始化配置,主题、插件这些按提示选就行,不影响后续使用。
真正决定这套环境能不能跑起来的,不是 PyCharm 装在哪,而是它用哪个 Python 解释器。PyCharm 自带一个捆绑的解释器,如果你不手动改,它默认就用那个,于是 Anaconda 里装的一堆库它一个都看不见——这就是开头那位同学踩的坑。
4.2 在 Settings 里添加 Anaconda 解释器
打开 PyCharm 后,进File > Settings(Windows/Linux)或PyCharm > Preferences(macOS),左侧找到Project下面的Python Interpreter。这里显示的是当前项目用的解释器,新项目默认可能是 PyCharm 自带的。
点右侧的齿轮图标,选Add(新版本里叫Add Interpreter),或者先点Show All再点+号。弹出的窗口里选Conda Environment或System Interpreter,然后浏览到 Anaconda 的安装目录,找到根目录下的python.exe:
C:\Users\用户名\anaconda3\python.exe如果你用的是 3.3 节里建的虚拟环境,路径则是:
C:\Users\用户名\anaconda3\envs\tf113\python.exe选中python.exe后确定,PyCharm 会读取这个解释器下已安装的所有包,在解释器列表里列出来。看到 numpy、tensorflow、opencv-python 这些出现在列表里,就说明指向对了。
4.3 解释器路径的常见误区
原文提到「通常在 anaconda3\envs 目录下找 python.exe」,这里要补一句:envs目录下放的是你自建的虚拟环境,base 环境的 python.exe 在 anaconda3 根目录下,不在 envs 里。如果你没建过虚拟环境,去 envs 里找会扑空。判断方法很简单:根目录的python.exe对应 base 环境,envs\环境名\python.exe对应具体虚拟环境,按你实际装库的位置选。
另一个误区是选了pythonw.exe或者conda.exe。前者是无控制台窗口的解释器,调试时看不到输出;后者根本不是解释器。认准python.exe这一个文件名就行。
配置完成后,PyCharm 右下角会显示当前解释器名称,新建一个.py文件写两行测试代码:
import sys print(sys.executable)运行后打印出的路径如果指向anaconda3目录下的python.exe,说明解释器绑定成功。这一步比在设置界面里看列表更可靠,因为它验证的是「实际运行时用的是谁」。
5. 避坑与排查:五条装环境时最常翻的车
5.1 现象:pip 装完,PyCharm 里 import 报 ModuleNotFoundError
原因:pip 装到了 A 解释器,PyCharm 用的是 B 解释器。Anaconda Prompt 默认激活 base 环境,而 PyCharm 项目可能指向系统 Python 或另一个虚拟环境。
解决:在 PyCharm 的Python Interpreter里确认解释器路径,和pip -V输出的路径对比。两边一致才是同一个环境。不确定时在 PyCharm 的 Terminal 里跑pip -V,看它指向哪。
5.2 现象:conda 命令在系统 cmd 里提示不是内部命令
原因:安装时没勾选「Add to PATH」,系统 cmd 找不到 conda。这其实是预期行为,不是装坏了。
解决:用开始菜单里的 Anaconda Prompt,它启动时会自动初始化 conda 环境。非要在系统 cmd 里用,得手动跑conda init cmd.exe再重开终端,但我不建议这么干,容易和系统 Python 混在一起。
5.3 现象:装 TensorFlow 时报一堆依赖冲突或版本不兼容
原因:当前 Python 版本和 TensorFlow 版本不匹配,或者 base 环境里已有旧版 numpy 等依赖,pip 解析依赖树时打架。
解决:别在 base 环境里硬装,用conda create -n 环境名 python=版本号建干净环境,激活后再装。冲突严重时加--no-cache-dir清掉 pip 缓存重试。
5.4 现象:import cv2 报 DLL load failed
原因:OpenCV 的二进制包和 Python 架构不匹配,常见于 32 位 Python 装了 64 位 wheel,或者系统缺 Visual C++ 运行库。
解决:先python -c "import platform; print(platform.architecture())"确认 Python 是 64 位,再pip uninstall opencv-python后重装。仍报错就补装微软的 VC++ 运行库。
5.5 现象:PyCharm 里代码能跑,但终端里 python 命令找不到库
原因:PyCharm 用的是项目配置的解释器,系统终端用的是系统 PATH 里的 Python,两者不是一回事。
解决:这不是故障,是设计如此。要在终端里复现 PyCharm 的环境,先conda activate 对应环境名再运行。养成「先激活环境再敲命令」的习惯,能避免大量「明明装了却找不到」的困惑。
6. 装完怎么验证跑通:一套五分钟自检流程
环境配完,别急着写业务代码,先花五分钟走一遍自检,把「解释器、库、IDE」三层都验到。这套流程我每次重装机器都会跑,能提前暴露九成配置问题。
第一步,在 Anaconda Prompt 里确认环境和库:
conda list | findstr tensorflow conda list | findstr opencvWindows 下用findstr过滤,能看到对应包名和版本就说明库在环境里。没有输出就是没装上,回到第 3 章补装。
第二步,在同一个 Prompt 里做 import 验证:
python -c "import tensorflow as tf; import cv2; import keras; print('tf', tf.__version__); print('cv2', cv2.__version__)"一行命令同时验证三个库能否加载,并打印版本号。全部打印出来且不报错,说明库层面没问题。
第三步,在 PyCharm 里新建一个测试文件,把解释器路径和库版本一起打出来:
import sys import tensorflow as tf import cv2 # 打印实际使用的解释器路径,确认指向 Anaconda print("interpreter:", sys.executable) # 打印库版本,确认 PyCharm 能加载 Anaconda 里的库 print("tensorflow:", tf.__version__) print("opencv:", cv2.__version__)运行结果里interpreter指向anaconda3下的python.exe,两个版本号正常打印,就说明 PyCharm 和 Anaconda 彻底打通了。如果interpreter指向别处,回第 4 章重新配解释器。
第四步,做一次最小功能验证,比如用 OpenCV 读一张图、用 TensorFlow 建一个常量张量:
import tensorflow as tf import cv2 # TensorFlow 最小验证:创建张量并做一次加法 a = tf.constant([1.0, 2.0]) b = tf.constant([3.0, 4.0]) print("tf add:", (a + b).numpy()) # OpenCV 最小验证:创建一张纯色图并检查尺寸 img = cv2.imread("test.jpg") print("image shape:", None if img is None else img.shape)TensorFlow 那行能输出[4. 6.],OpenCV 那行在图片存在时输出形状、不存在时输出 None,都算正常。这一步的意义是验证库不只是能 import,还能实际执行计算,排除掉「装了个空壳」的情况。
最后给个版本对照表,装之前对一眼能省很多事:
| 组件 | 建议版本 | 说明 |
|---|---|---|
| Anaconda | Python 3.x 版本线 | 不选 Python 2.7 旧版 |
| Python | 3.7 左右 | 与 TensorFlow 1.x 匹配 |
| TensorFlow | 1.13.1(按项目锁) | 需匹配 Python 版本 |
| OpenCV | opencv-python 最新稳定版 | 包名别写成 opencv |
| PyCharm | 社区版 | 深度学习够用 |
自检里最容易忽略的是第三步——很多人只在终端验证了库,没在 PyCharm 里验证解释器路径,结果 IDE 和命令行各说各话。从那以后我每次配完环境,都强制走一遍「终端 import + IDE 打印 sys.executable」这两道关,两边路径对上了才敢开始写代码。希望这套流程能帮你少走几个弯路。
本文还有配套的精品资源,点击获取