关于conda、虚拟环境envs、镜像通道mirrors channels、pip、pycharm解释器配置interpreter config的一些总结

conda与虚拟环境相关命令

当某个环境所安装的包与其他环境安装的包会相互冲突,或者想要单独定义一个完成某特定任务的环境时,通常需要用到虚拟环境。

查看conda基本信息

conda info

查看当前存在哪些虚拟环境

conda env list 
conda info --envs

创建虚拟环境

conda create --name your_env_name python=x.y
conda activate your_env_name
conda deactivate

克隆虚拟环境

  1. 根据已有环境名复制生成新的环境
    假设已有环境名为A,需要生成的环境名为B:
conda create --name B --clone A 
  1. 根据已有环境路径复制生成新的环境
    假设已有环境路径为D:\A,需要生成的新的环境名为B:
conda create --name B --clone D:\A

生成的新环境的位置在anaconda的安装路径下,例如D:\Users\ZC\anaconda3\envs文件夹下。

删除指定虚拟环境

conda remove --name 虚拟环境名 --all

或者直接删除环境文件夹(可能会有残余)

删除指定虚拟环境中某个包

conda remove --name your_env_name package_name

设置国内镜像

https://Anaconda.org的服务器在国外,安装多个packages时,有时conda下载的速度很慢甚至无法连接。可用国内教育镜像资源,例如中科大或清华TUNA镜像源,将其加入conda的配置即可:

添加Anaconda的TUNA镜像

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

添加USTC仓库镜像

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/

设置搜索时显示通道地址

conda config --set show_channel_urls yes

Conda 附加库

有些包使用conda只能从指定channel的附加库中安装,如fitter用conda安装时只能从bioconda channel,或者有时想要安装最新版python时只能从conda-forge,这时需要配置附加库。下面以中科大附加库为例:

Conda Forge

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/

msys2

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/

bioconda

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/

menpo

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/

查看channels

conda config --show

恢复默认镜像(即删除手动配置的全部镜像通道)

conda config --remove-key channels

删除指定channel

conda config --remove channels
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free

conda config channels

关于conda通道的配置问题

方法一

当需要在虚拟环境中安装最新的大版本python时,先config conda-forge的镜像通道;或者需要conda install 特定的包时,先config 对应指定的镜像通道;安装配置完成后,再conda config --remove-key channels,删除这些通道,恢复默认,以防后续出现安装或升级包时出现一些不兼容的报错。

方法二

配置conda channels的默认顺序,一般比较保险的原则是:先官方通道,然后附加库,然后镜像库A,然后镜像库B等,例如
在这里插入图片描述

方法三

当默认通道下载速度慢时,可用临时指定的通道,来下载安装包或升级包,例如:

conda update --all --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

其他一些经验

1. conda中升级python的大版本和小版本

使用 conda update --all 或者 conda update python 只能升级python的小版本,例如从3.x.y 到 3.x.y+;如果想升级大版本,例如从3.x 到 3.x+,可以用 conda install python=3.11;但直接在base环境中安装最新版,可能出现与有些已安装包的版本不兼容问题,例如:
在这里插入图片描述
在这里插入图片描述
所以最好是在新建的空的虚拟环境中安装最新版python最保险:

conda create --name your_inv_name python=3.11(最新版本)

但是有时候python最新版在常规通道中不能获取,这时需要配置conda-forge通道,从conda-forge中可安装最新版。

2. 从python官网下载安装,并安装该环境中的包

也可以从python官网中直接下载安装最新版,只是需要从该安装路径下,去安装该解释器环境的相关包。例如可以cd到带python.exe的安装目录,再用python -m pip install 模块名。

3. pip的镜像加速下载

当安装较大的包时,pip通常下载较慢,最好使用临时镜像通道,而不去配置默认镜像通道。例如[清华TUNA PyPI镜像源](可能较慢)(https://mirrors.tuna.tsinghua.edu.cn/help/pypi/):

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

或者中科大PyPI镜像源:(通常更快)

pip install -i https://mirrors.ustc.edu.cn/pypi/web/simple package

Pycharm中配置不同python解释器到项目或console

当安装了anaconda、create了虚拟环境、从python官网也有下载安装python时,就有多个解释器及其对应的环境可以选择,以适应不同项目的要求。在pycharm中可以方便地指定或切换解释器及其对应环境:

配置控制台的解释器及其对应环境

设置中搜索控制台,选择构建、执行、部署中的控制台,在Python解释器中选择想要的python安装目录下的解释器,选定之后对应的环境也会选定。但最好是选择跟项目相同的解释器环境,为了在console中调试脚本时不会出现包和版本的报错问题。
在这里插入图片描述

给不同的项目配置想要的解释器及其对应环境

当有不同的项目需要配置不同的解释器环境时,就可以在项目中选择需要的解释器。下图是anaconda的默认解释器及其环境,虚拟环境中的python.exe一般在anaconda3\envs\your_env_name下,官网安装的python就在对应的安装路径下。注意当项目的解释器切换时,如果要用到console,最好将console的解释器也切换为相同的。
在这里插入图片描述

在pycharm中新建或配置虚拟环境

在这里插入图片描述
当选择用pycharm新建虚拟环境时,location一般是到某个项目的文件夹下,base interpreter可以选择conda的python主解释器,也可以选择conda某个虚拟环境下的python解释器,也可以选择将要从python官网下载的不同大版本的解释器,也可以选择从官网下载已安装的python解释器。

在pycharm中新建或配置conda(虚拟)环境

在这里插入图片描述
当interpreter选择默认的 new virtualenv时,就是在pycharm中新建conda的虚拟环境。此时就需要在conda envs的默认路径下新建一个文件夹并命名,该文件夹就用来放虚拟环境。然后选择这个虚拟环境的python大版本,以及conda的可执行文件。这个操作就相当于:conda create --name your_env_name python=x.y,只是在pycharm的对话框中进行而已。

此界面中的interpreter也可以选择conda已有的默认python解释器,或者已建立的虚拟环境中的解释器,这时就相当于使用conda base环境,或者conda activate your_env_name。

指定系统解释器

在这里插入图片描述
当已有为不同项目足够使用的不同python大版本的环境时,也可以为每个项目都指定不同的系统解释器,而不必再去新建或配置pycharm的、或conda的环境了,因为环境新建和配置的工作之前已经做了,现在要编写不同环境需求的项目脚本时,就直接以切换系统解释器的方式使用就行。

参考资料:

https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html
https://docs.python.org/3/tutorial/venv.html
https://pycaret.gitbook.io/docs/get-started/installation

<think>好的,我现在需要帮用户解决在PyCharm配置Anaconda虚拟环境时遇到的错误。用户提到了几个引用内容,特别是关于找不到模块的错误,比如fbgemm.dll。首先,我得回忆一下这些错误的常见原因和解决方法。 首先,用户可能按照引用[1]和[2]的方法配置环境,但遇到了问题。引用[3]中的错误提示说明在加载torch的某个dll时失败,这可能是因为CUDA版本不兼容,或者PyTorch安装不正确。另外,用户可能没有正确选择虚拟环境中的Python解释器,或者虚拟环境本身有问题。 接下来,我应该分步骤思考解决方法。首先确认是否正确选择了Existing environment,并指向了正确的python.exe。然后检查CUDA版本是否与PyTorch版本匹配,这可能需要用户重新安装PyTorch,并按照引用[2]的建议在虚拟环境中运行安装命令。如果用户没有激活虚拟环境就安装,可能会导致依赖项缺失,从而出现dll错误。 另外,系统环境变量的问题也可能导致找不到模块,需要检查PATH是否包含必要的CUDA路径。有时候,重新创建虚拟环境或者以管理员权限运行PyCharm和Anaconda Prompt也能解决问题。用户可能还需要更新显卡驱动,确保兼容性。 最后,要确保所有步骤都清晰,并且用户能够按照指导逐步排查问题。可能还需要建议用户验证安装是否成功,比如运行简单的PyTorch代码来测试CUDA是否可用。总结这些步骤,形成一个结构化的回答,帮助用户解决报错问题。</think># PyCharm配置Anaconda虚拟环境报错解决方案 ## 一、环境配置基础步骤 1. 创建Anaconda虚拟环境 ```shell conda create -n pytorch_env python=3.8 conda activate pytorch_env ``` 2. 正确安装PyTorch(参考[^2]) - 访问[PyTorch官网](https://pytorch.org/)获取对应CUDA版本的安装命令 - 示例安装命令: ```shell conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia ``` 3. PyCharm配置流程: - File > Settings > Project: [项目名] > Python Interpreter - 点击⚙️选择"Add New Interpreter > Conda Environment" - 选择"Existing environment",路径指向`Anaconda3\envs\pytorch_env\python.exe` ## 二、常见错误处理方案 ### 错误1:Environment location directory is not empty **解决方法**: 1. 检查`.conda/environments.txt`文件路径是否正确 2. 确认选择的python.exe路径格式应为: ``` C:\Anaconda3\envs\pytorch_env\python.exe ``` 3. 删除残留环境后重建(参考[^1]) ### 错误2:OSError: [WinError 126] 找不到指定模块(如fbgemm.dll) **排查步骤**: 1. CUDA版本验证 ```python import torch print(torch.cuda.is_available()) # 应返回True print(torch.version.cuda) # 需与安装时声明的版本一致 ``` 2. 依赖完整性检查: - 进入虚拟环境目录检查文件结构: ``` envs/pytorch_env/Lib/site-packages/torch ├── lib │ ├── c10.dll │ ├── fbgemm.dll ← 重点检查 │ └── torch_python.dll └── CUDA相关组件 ``` 3. 解决方案: - 重新安装PyTorch(在激活的虚拟环境中) - 添加系统环境变量: ``` PATH += C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin ``` - 更新显卡驱动至最新版本 ### 错误3:CondaHTTPError **解决方法**: 1. 修改.condarc配置文件: ```yaml 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 ``` ## 三、最佳实践建议 1. 权限管理: - 始终以管理员身份运行Anaconda Prompt - 关闭杀毒软件临时文件夹保护 2. 环境验证脚本: ```python import torch print(f"PyTorch版本:{torch.__version__}") print(f"CUDA可用性:{torch.cuda.is_available()}") print(f"CUDA版本:{torch.version.cuda}") print(f"cuDNN版本:{torch.backends.cudnn.version()}") ``` 3. 项目结构建议: ``` project_root/ ├── .idea/ ├── venv/ ← 建议排除虚拟环境目录 └── requirements.txt ← 使用pip freeze > requirements.txt生成 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山高月小 水落石出

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值