1. 为什么我会把 PyCharm 和 Anaconda 绑在一起用
先把结论撂在这儿:只要你写 Python 的目的大于"跑个几十行的小脚本",那么用 Anaconda 管环境、用 PyCharm 写代码这套组合,在相当长一段时间里都是性价比最高的搭配。我自己从最早手撸pip + venv,到后来被各种依赖冲突折磨得没脾气,再到现在整套工作流固定下来,中间踩的坑够写一本小册子。这篇文章就是把这些东西一次性摊开讲清楚,不管你是刚装完 Python、连解释器是什么都没搞明白的新手,还是已经写过一段时间、但环境管理一直靠"重装大法"的老哥,应该都能捞到点东西。
先把两件事分开说。Anaconda 的本质是一个包管理器和环境管理器,它自带了几百个科学计算相关的库,还内置了 conda 这个工具。你可以把它理解成"一个装 Python 的收纳箱"——箱子里能放好几套互相隔离的 Python 环境,每套环境里的库版本互不干扰。而PyCharm 是编辑器(IDE),负责的是写代码、跳转定义、调试、重构、版本控制这些事,它本身不产生 Python 环境,只是去"借用"已经存在于你电脑上的某个解释器。
很多人第一次装完之后困惑的点就在这儿:装了两个软件,但打开 PyCharm 新建项目,它默认给你建了一个.venv文件夹,跟你 Anaconda 里那些环境一点关系都没有。然后就出现了"我在 Anaconda Prompt 里pip install装好的包,PyCharm 里 import 却报红"这种经典场面。本质原因就是PyCharm 用的是一个解释器,你在命令行装包用的是另一个解释器,两边压根不是同一个环境。
所以这篇文章的核心目标就一个:把这两个软件正确地"焊"在一起,让 PyCharm 里跑代码用的解释器,跟你命令行里装的包,始终是同一套东西。
关于版本选择,顺便先说一下。PyCharm 分社区版(Community)和专业版(Professional)。社区版免费,支持纯 Python 开发,日常写脚本、做数据分析、跑机器学习训练完全够。专业版多了 Web 框架支持(Django、Flask 的模板跳转)、数据库工具、远程开发、科学模式等,对做 Web 后端或者需要连远程服务器的人更友好。如果你不确定自己需不需要,先装社区版,用了半年发现确实缺某个功能再考虑升级,这是最省事的路径。至于网上那些关于激活的讨论,我的建议很直接:能用免费版就用免费版,学生和教师可以通过官方教育授权渠道申请,开源项目维护者也有对应的免费授权,走正规路径心里踏实,也不用担心哪天杀毒软件对着你的 IDE 报毒。
2. 安装环节:那些看起来不重要、实际上很要命的选项
2.1 Anaconda 从哪里下载、装在哪
下载渠道我强烈建议走两个地方:Anaconda 官网,或者国内高校的开源镜像站。官网的问题不是不安全,而是慢,一个安装包七八百兆,网速一般的话能下到你怀疑人生。国内的话,清华大学开源软件镜像站(mirrors.tuna.tsinghua.edu.cn)的anaconda/archive/目录下保存了历史版本,下载速度通常能跑满带宽。进去之后按日期找最新的版本就行,文件名格式类似Anaconda3-20xx.xx-x-Windows-x86_64.exe。
注意一件事:不要安装 Python 官网的 Python 之后再装 Anaconda,这两个东西会在系统 PATH 里打架。Anaconda 自带 Python,装了它就不需要再单独装一个。如果之前已经装过官方 Python,建议先在"添加或删除程序"里把它卸掉,清干净再装 Anaconda,能省掉后面一大堆"为什么我的 python 命令指向了另一个版本"的排查时间。
安装路径上,我的习惯是不要装在 C 盘默认的用户目录下,尤其 Windows。原因是 Anaconda 本身加上后续创建的几个环境,轻轻松松吃掉 20 到 50 个 G,C 盘红了之后你会非常难受。建议单独找一个盘,比如D:\Anaconda3、D:\dev\anaconda3这种纯英文、无空格、无中文的路径。为什么强调纯英文无空格?因为 Python 生态里有一批老库(特别是科学计算和编译相关的)对路径里的空格和中文处理得很糟糕,装包时报莫名其妙的错,排查半天最后发现是路径里有空格,这种亏我吃过不止一次。
2.2 安装向导里那两个勾选框
Anaconda 安装过程中有两个选项会让新手纠结:
第一个是"Install for: Just Me / All Users"。如果这台电脑只有你自己用,选 Just Me 就够了,不需要管理员权限,后续更新环境也少很多权限问题。如果是实验室公用机或者公司电脑,选 All Users。
第二个是"Add Anaconda3 to my PATH environment variable"。官方安装向导会明确建议不要勾,理由是可能影响系统里其他软件。但实际用下来,如果你这台机器上只有这一个 Python 发行版,勾上是没问题的,好处是普通 CMD 和 PowerShell 里直接就能敲conda和python。如果你选择不勾(保守做法),那 Anaconda 会装一个叫"Anaconda Prompt"的专用终端,所有 conda 命令都在这个终端里执行。
我的实际建议是:新手先不勾,用 Anaconda Prompt 就好。等你对 PATH 机制有概念了,再手动把D:\Anaconda3、D:\Anaconda3\Scripts、D:\Anaconda3\Library\bin这三个目录加进系统环境变量,控制权在自己手里,出问题也知道从哪儿改回来。Linux 和 macOS 下,安装脚本最后会问你要不要跑conda init,这个要跑,它会把初始化代码写进你的 shell 配置文件(.bashrc或.zshrc),之后新开的终端会自动带上 conda 环境。
2.3 PyCharm 安装和首次启动的几个设置
PyCharm 的安装就简单多了,官网下载对应系统的安装包,一路下一步。社区版和专业版的安装流程完全一样,区别只在激活之后解锁的功能。
安装过程中的选项:
- Create Desktop Shortcut:勾上,省事。
- Update PATH Variable:勾上,这样命令行里能敲
charm直接打开项目。 - Update Context Menu:建议勾 "Add 'Open Folder as Project'",以后在任何代码文件夹上右键就能直接用 PyCharm 打开,比先开 IDE 再拖文件夹快得多。
- .py 文件关联:勾上,双击
.py文件直接进 PyCharm。
首次启动会问你要不要导入旧的配置,如果是全新安装就选 "Do not import settings"。然后会让你选主题(Darcula 深色 / Light 浅色)和插件集,插件那步可以先跳过,进去之后在 Plugins 里慢慢挑。还有一步是让你登录账号同步设置,个人用不登也行,设置就存在本地。
3. 把两者接起来:解释器配置才是真正的核心
3.1 先搞懂 conda 环境到底是什么
在动手配置之前,一定要先理解一个概念:conda 环境本质就是一个文件夹,里面放着一套独立的 Python 解释器、标准库、以及你装进去的所有第三方包。环境之间是完全隔离的,A 环境里装的是 numpy 1.24,B 环境里装 numpy 2.0,两者互不影响。
环境默认存放在 Anaconda 安装目录下的envs文件夹里,也就是D:\Anaconda3\envs\你的环境名。进去看一眼你就明白了:python.exe在根目录,第三方包装在Lib\site-packages里。这就是为什么两个环境可以共存——它们各自有各自的site-packages。
PyCharm 配置解释器,配的就是这个python.exe的路径。一旦你理解了"配解释器 = 指定一个 python.exe 文件"这件事,后面所有问题都好排查了。
常用的几个环境管理命令,建议背下来:
conda env list # 列出所有环境,带星号的是当前激活的 conda create -n myproject python=3.10 # 创建名为 myproject、Python 版本 3.10 的环境 conda activate myproject # 激活环境 conda deactivate # 退出当前环境 conda env remove -n myproject # 删除整个环境(连带里面的包一起删)其中conda env list会输出类似这样的内容,那个base是 Anaconda 自带的默认环境,我强烈建议不要在 base 环境里装任何项目用的包,让它保持干净,只做环境管理用。
# conda environments: # base * D:\Anaconda3 myproject D:\Anaconda3\envs\myproject torch-gpu D:\Anaconda3\envs\torch-gpu3.2 新建项目时直接绑定 conda 环境
这是最常用的流程,也是我推荐的标准做法:先在命令行把环境建好,再让 PyCharm 去用。
第一步,打开 Anaconda Prompt,创建并激活环境:
conda create -n ml-demo python=3.10 -y conda activate ml-demo第二步,装几个基础包,验证环境是通的:
conda install numpy pandas matplotlib -y第三步,打开 PyCharm,新建项目。在 "New Project" 界面,把Location设成你的项目目录,然后把Interpreter type从默认的Project venv改成Conda。这时候下面的下拉框里会自动列出你机器上所有的 conda 环境,选中刚才建的ml-demo就行。
这里有个细节容易踩坑:如果下拉框里找不到你刚建的环境,点右边那个文件夹图标,手动指定路径,指向D:\Anaconda3\envs\ml-demo\python.exe(Windows)或者~/anaconda3/envs/ml-demo/bin/python(Linux/macOS)。手动指定永远是最保险的方式。
绑定之后,PyCharm 右下角状态栏会显示当前解释器名字,点一下能看到完整的包列表。你可以在这里核对一下刚才装的 numpy 在不在列表里——在,说明绑定成功了。
3.3 给已有项目换解释器
老项目想从.venv切到 conda 环境,路径是:
File→Settings→Project: 项目名→Python Interpreter→ 点右边的齿轮 →Add→ 左侧选Conda Environment→Use existing environment→ 选你要的环境。
换完之后,PyCharm 会花几十秒重建索引(右下角有个进度条),这期间代码跳转可能会卡,别以为是坏了,等它跑完就好。索引这东西是 PyCharm 相比 VS Code 最大的优势之一——它会把整个环境的库都解析一遍,之后你点pd.read_csv能直接跳到 pandas 的源码定义,查源码找问题非常方便。
3.4 图形界面建环境 vs 命令行建环境
PyCharm 其实也支持直接在Add Interpreter界面里新建 conda 环境(选New environment,填环境名和 Python 版本,它会调 conda 帮你建)。这个功能能用,但我个人还是更推荐命令行建。原因有两点:一是在命令行里你能清楚看到 conda 输出的每一行日志,出错了知道错在哪一步;二是命令行建环境不依赖 PyCharm,哪天你不用 PyCharm 了,环境依然在那儿,工具和环境的解耦对长期维护更友好。
对比一下两种方式的差异:
| 维度 | PyCharm 图形界面新建 | 命令行 conda create |
|---|---|---|
| 上手难度 | 低,点几下就行 | 需要记一条命令 |
| 出错时可见信息 | 少,常常只弹个报错框 | 完整日志,能看到解析依赖的过程 |
| 环境位置可控 | 默认放 envs 目录 | 可用-p参数指定任意路径 |
| 与 IDE 解耦 | 弱,换个 IDE 得重新配 | 强,环境独立存在 |
| 批量复现 | 不方便 | 可写进脚本,一条命令搞定 |
4. 装包与镜像源:让下载速度从"龟速"变成"起飞"
4.1 conda 源和 pip 源不是一回事
这是新手最容易混淆的点之一。conda 有 conda 的源,pip 有 pip 的源,两者独立配置,互不影响。你在 Anaconda Prompt 里敲conda install走的是 conda 源,敲pip install走的是 pip 源。很多人只配了 conda 镜像,结果用 pip 装包还是慢,就是因为没意识到这是两套配置。
默认情况下,conda 的源都在国外,下载几个大包(比如 pytorch)能等十几分钟甚至直接超时。解决办法就是换国内镜像。清华大学镜像站是目前用得最普遍的,配置方式如下。
4.2 配置清华镜像源的完整步骤
先配 conda 的。依次执行这几条命令(Windows 在 Anaconda Prompt 里,Linux/macOS 在普通终端里):
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ conda config --set show_channel_urls yes这几条命令干的事,就是往用户目录下的.condarc文件里写配置。Windows 下路径是C:\Users\你的用户名\.condarc,Linux/macOS 下是~/.condarc。执行完可以用conda config --show channels看一眼顺序对不对。
再说 pip 的。一条命令搞定:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple这条命令会在用户目录下生成pip.ini(Windows)或者pip.conf(Linux/macOS),内容是:
[global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple注意:镜像源是加速手段,不是永久保险。有时候镜像站同步会滞后,某个刚发布的新版本可能还没同步过来,这时候可以临时用
-i参数指定官方源:pip install 包名 -i https://pypi.org/simple,装完就结束,不会改动全局配置。
另一个注意点:
.condarc里的 channels 顺序是有意义的,越靠前优先级越高。如果你把free放在main前面,可能会装到版本比较老的包,因为 conda 会优先在靠前的频道里找。这是我曾经踩过的坑——同样的命令,同事装出来是 numpy 1.26,我装出来是 1.19,排查半天才发现是 channel 顺序不一样。
4.3 装包到底该在命令行装还是 PyCharm 里装
两个地方都能装。PyCharm 的Settings→Python Interpreter→ 左边那个+号,搜索包名点安装,图形化操作,适合记不住包名的时候用(它能搜索,还能看已安装版本)。命令行装的优势是快、可批量、能看完整日志。
我的习惯是:单个小包装用 PyCharm 界面,批量装或者装大包用命令行。比如配深度学习环境,一次性要装 pytorch、torchvision、torchaudio,用命令行写一条就完事了,界面里一个个搜太慢。
还有一个纪律问题:同一个环境里,尽量别把 conda install 和 pip install 混着用来装同一批有依赖关系的包。比如先用 conda 装了 numpy,又用 pip 覆盖装了 scipy,就可能出现 numpy 版本被 pip 改掉、导致 conda 记录的依赖关系不一致的情况。真要用 pip 装某个 conda 源里没有的包,装完之后跑一下conda list看看有没有异常,有的话重建环境是最省事的。
4.4 装包时最常见的那个报错
Windows 上装某些需要编译的包(比如老版本的mysqlclient、某些统计库),大概率会遇到:
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools"这个报错的意思是:这个包的源码里包含 C 扩展,pip 要从源码编译,但它在你机器上找不到 C++ 编译器。三种解法,按推荐程度排:
- 优先找有没有预编译好的 wheel 包。现在绝大多数主流库都有 Windows 的 wheel,
pip install 包名直接就能装上。出现这个错通常是因为包太老或者太冷门。 - 装 Microsoft C++ Build Tools。去微软官网下载 Visual Studio Build Tools,安装时勾选"C++ 生成工具"和 Windows SDK,装完重启终端再试。注意是 Build Tools,不是完整的 Visual Studio,前者几个 G,后者几十个 G。
- 换 conda 装。conda 的源里很多包都是预编译好的二进制,
conda install 包名往往能绕开编译问题。这也是 conda 相比 pip 的一个实际优势。
5. 多环境隔离:一个项目一个环境,这不是洁癖
5.1 创建环境时那些参数的含义
conda create -n myenv python=3.10 numpy=1.24 pandas -y拆开看:-n myenv是环境名,python=3.10指定 Python 版本(注意是等号,不是==),后面可以跟一串包名和版本约束,-y表示自动确认不需要交互。
关于 Python 版本怎么选,我的经验是:选比最新版落后一到两个小版本的那个。比如现在最新是 3.13,那 3.11 或者 3.12 是比较稳的选择。原因是科学计算和深度学习那一批库,对最新 Python 的支持通常要滞后几个月,你装了 3.13 发现 pytorch 装不上,再退回来重装环境,白白浪费半小时。3.10 到 3.12 这个区间,几乎所有的库都覆盖到了。
环境名也有讲究:不要用中文、不要用空格、不要用纯数字。用项目名-py310这种格式挺清晰,一眼能看出这是哪个项目的哪个 Python 版本。另外要注意,conda 环境名也不能和已有的重名,重名会直接报错。
5.2 环境怎么导出、怎么在另一台机器上复现
这是团队协作场景里必须掌握的一环。假设你在自己电脑上把环境调好了,现在要交给同事,或者部署到服务器上,不可能让他手动一个个装。
conda 环境导出:
conda activate myenv conda env export > environment.yml生成的environment.yml大概长这样:
name: myenv channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ - defaults dependencies: - python=3.10.13 - numpy=1.24.4 - pandas=2.0.3 - pip: - some-pip-only-package==1.2.3同事拿到之后,一条命令重建:
conda env create -f environment.yml这里有个坑必须提醒:默认导出的 yml 里带了 build string(类似numpy=1.24.4=py310h5f9d8c6_0后面那一串),它跟操作系统和 CPU 架构绑定,跨平台(Windows 导出的拿到 Linux 上用)会直接失败。解决方法是导出时加--no-builds:
conda env export --no-builds > environment.yml如果项目只用了 pip 装的包,那更简单,用requirements.txt:
pip freeze > requirements.txt pip install -r requirements.txt但要注意pip freeze会把环境里所有包都列出来,包括你顺手装的、项目其实不需要的,导出的文件会很长。实战中我更推荐手写一个精简版的requirements.txt,只写直接依赖,不写传递依赖:
numpy>=1.24 pandas==2.0.3 scikit-learn版本约束用>=还是==也是门学问。库本身开发用>=灵活,应用项目要做部署用==锁定,避免某天自动升级上来一个不兼容的版本把线上搞崩。
5.3 配一个 PyTorch 环境作为完整示例
把上面这些串起来走一遍。假设我要配一个 GPU 版的 PyTorch 环境:
# 1. 创建环境 conda create -n torch-gpu python=3.10 -y # 2. 激活 conda activate torch-gpu # 3. 安装 PyTorch(CUDA 11.8 版本) conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia -y # 4. 验证 python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"第三条命令里的-c pytorch -c nvidia是指定频道,意思是这次安装临时从这个频道找包,不写进全局配置。装完之后第四步会输出类似2.1.0和True,True表示 GPU 可用。
如果只是想在 CPU 上跑跑,把pytorch-cuda=11.8换成cpuonly:
conda install pytorch torchvision torchaudio cpuonly -c pytorch -y关键点:CUDA 版本一定要和你的显卡驱动匹配。
nvidia-smi命令右上角会显示驱动支持的最高 CUDA 版本,你装的 pytorch-cuda 版本不能超过这个数。很多人装完发现torch.cuda.is_available()返回 False,九成是版本对不上,或者装成了 CPU 版。
5.4 环境用旧了怎么清理
环境这东西跟硬盘一样,会越攒越多。查看占用:
conda info --envs删除不要的环境:
conda env remove -n 环境名清理 conda 的下载缓存和未使用的包(这个能释放出相当可观的空间,我清过一次腾出来十几个 G):
conda clean -a-a是 all,会清掉包缓存、索引缓存、tar 包等等,执行时会让你确认。这个命令很安全,不会碰你正在用的环境,只是把下载过的安装包副本删掉。
6. PyCharm 侧的提效配置,装完不会用等于白装
6.1 中文界面怎么设置
官方有中文语言包插件,不用去下那些来路不明的汉化补丁。路径:Settings→Plugins→ 顶部切到Marketplace→ 搜索Chinese,找到"Chinese (Simplified) Language Pack",点 Install,装完重启 IDE。
重启之后界面就是中文了。想切回英文,在同一个插件页面把它禁用就行。
提醒一句:网上有很多所谓的"汉化包"是第三方做的,安装方式是手动往 IDE 目录里丢文件。这类东西我的建议是别碰,一来版本一升级就失效,二来你不知道里面塞了什么。官方插件市场里的那个语言包已经覆盖得非常全了。
6.2 值得装的几类插件
插件这东西不用贪多,装多了拖慢启动速度。按用途推荐几类:
- 代码质量类:
SonarLint,能在你写代码的时候实时提示潜在的 bug 和坏味道,比如未使用的变量、可能的空指针,比等到运行时才发现问题早得多。 - AI 辅助类:这两年 AI 编程助手插件很火,能在编辑器里直接补全代码、解释报错、生成单元测试。主流的几家都有 PyCharm 插件,装上之后在设置里填自己的 API Key 就能用。对新手来说,让它解释一段看不懂的源码挺有效率。
- 效率工具类:
Key Promoter X,当你用鼠标点了某个功能,它会弹窗告诉你这个操作的快捷键是什么,用一两周就能把常用快捷键记住,长期效率提升明显。 - 可视化类:
Rainbow CSV,看 CSV 文件的时候按列上色,比默认的一片黑白好读太多。
安装完之后建议重启一次 IDE,有些插件需要重启才能完全生效。
6.3 运行和调试配置
PyCharm 里跑代码有三个层次,很多人只用第一个,其实后两个更省事:
第一层,直接在编辑器里点绿色三角。适合临时跑个脚本,但每次都要手动设工作目录,比较随意。
第二层,Run/Debug Configurations。点右上角那个下拉框 →Edit Configurations→+→Python,在这里配置:
Script path:入口脚本路径Parameters:命令行参数,比如--epochs 50 --lr 0.001Working directory:工作目录,这个非常关键。如果你的代码里用了相对路径读数据,比如pd.read_csv('data/train.csv'),那工作目录设不对就会直接报文件找不到。Environment variables:环境变量,比如设CUDA_VISIBLE_DEVICES=0指定用哪块卡。
配好之后可以保存多个配置,切换起来点一下就行,比每次改代码里的参数方便得多。
第三层,调试模式。点那个绿色小虫子图标启动,就能打断点。打断点的方法是在行号右边点一下,出现红点。程序跑到那一行会暂停,这时候可以在Debug面板里看所有变量的当前值,也可以在下方的Console里直接敲表达式求值,比如df.shape,看数据形状对不对。这套流程排查数据处理逻辑错误效率极高,比到处print强太多。
一个实用技巧:调试的时候如果某个变量是个 DataFrame,PyCharm 专业版能直接在变量面板里以表格形式查看它,社区版则是显示摘要。想快速看数据,可以在断点处唤出 Console 敲
df.head()。
7. 常见问题速查与排查思路
把这些年被问得最多的问题整理成一张表,遇到问题先对着查,能省下大量搜索时间。
| 现象 | 大概率原因 | 处理方式 |
|---|---|---|
| PyCharm 里 import 报红,命令行里正常 | 解释器不是同一个环境 | 检查Settings→Python Interpreter指向的 python.exe 路径 |
| 命令行里 import 报红,PyCharm 里正常 | 终端没激活环境 | 执行conda activate 环境名,或先跑conda init |
| 终端启动时提示解释器未激活 | shell 未初始化 conda | 执行conda init bash(或 powershell/zsh),重开终端 |
| 装包卡住不动 | 走的默认国外源 | 配好 conda 和 pip 的国内镜像 |
| conda install 报依赖冲突 | 频道优先级或已有包版本冲突 | 新建一个干净环境重装,别在原环境硬解 |
| Windows 装包报 VC++ 14.0 required | 缺少 C++ 编译工具 | 装 Build Tools,或改用 conda 安装,或找 wheel 包 |
torch.cuda.is_available()返回 False | 装成了 CPU 版或 CUDA 版本不匹配 | nvidia-smi看驱动支持版本,重装对应版本 |
| 环境占硬盘越来越大 | 缓存和旧环境堆积 | conda clean -a,删掉不用了的conda env remove |
| PyCharm 提示找不到 Python | 解释器路径失效(环境被删了) | 重新在Settings里指定一个有效的解释器 |
| PowerShell 里 conda 命令不识别 | 执行策略限制或未初始化 | Set-ExecutionPolicy RemoteSigned后跑conda init powershell |
关于 PowerShell 那个问题展开说一句,因为这个报错信息很容易误导人。Windows 下装了 Anaconda 之后,在 PowerShell 里敲conda activate经常报 "无法加载文件...因为在此系统上禁止运行脚本"。这不是 conda 装坏了,而是 PowerShell 默认的执行策略不允许运行脚本文件。解决办法是用管理员身份打开 PowerShell,执行:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser然后再跑conda init powershell,重开终端就正常了。CurrentUser这个 scope 只影响你自己,不改全局,比较稳妥。
还有一个我踩过的坑值得单独说:PyCharm 的 Terminal 默认用的 shell 可能和你系统终端不一样。Windows 下 PyCharm 内置终端早几年默认是 CMD,新版本基本改成 PowerShell 了。如果你在里面敲 conda 命令提示不识别,去Settings→Tools→Terminal里看Shell path,可以手动改成cmd.exe或者指向 Anaconda Prompt 的快捷方式。这个改完要重启 IDE 生效。
至于项目换电脑、环境重建这块,我的固定流程是:新机器上先装 Anaconda,把渠道配好,然后直接conda env create -f environment.yml(如果是团队项目一般仓库里就有这个文件),等它跑完,再装 PyCharm,打开项目指定解释器,前后二十分钟能完全恢复工作状态。这个流程我用了几年了,比在新机器上一个个pip install快得多,也不会漏装。
最后提醒一句关于环境的纪律:每个新项目开一个新环境,不要图省事在 base 或者随便一个老环境里装东西。你可能觉得建环境多花三分钟麻烦,但等到某天两个项目的依赖打起来、互相覆盖版本、排查一整天的时候,就知道这三分钟有多划算了。我自己现在的习惯是,只要开始写超过一百行的东西,第一件事就是conda create。这个习惯养成之后,环境冲突这类问题基本就从我的日常里消失了。