在Pycharm中使用conda环境(亲测)

发布时间:2024-12-23 04:33

使用PyCharm进行Python项目开发:PyCharm文档 #生活技巧# #工作学习技巧# #编程学习资源#

网上的教程感觉太乱了并且没有特别新版的,这次做课程大作业正好要用到新conda环境,借此机会来实践并分享一下(我是2024.3.1版本的Pycharm)。

教程

首先打开你的项目,选择右上角的文件,再选择设置(我改了中文,英文就是Settings)。

d825825ab3364ce59a2c02ad5db0db89.png

左侧列表选择项目中的Python解释器,然后点右边红框中的添加本地解释器。

35559eacd14d465bbd33ee0dd7b79641.png

选择现有,类型选conda,然后去文件夹里找到你的anaconda或者miniconda的Scripts目录下的conda.exe文件并选中,它会自动检测你已经创建的conda环境,最后选想用的就可以(我这里选的是我新创的py39这个环境)。

af70a85aae8546c0a02e8dda1648f3c8.png

现在打开pycharm的终端,就会发现powershell自动进入我们刚刚选择的py39这个conda环境啦。

遇到的问题

报错1

上面的过程做完后在终端激活环境就可以了,但是由于我的系统环境变量以前设置的有点问题,因此出现了报错,在这里顺便记录一下,报错如下:

Invoke-Expression : 所在位置 行:1 字符: 420

+ ... ll\v1.0;C:\WINDOWS\System32\OpenSSH;"d:\qqquartus\quartus\bin;";"D:\j ...

+ ~~~~~~~~~~~~~~~~~~~~~~~~

表达式或语句中包含意外的标记“d:\qqquartus\quartus\bin”。

所在位置 行:1 字符: 448

+ ... System32\OpenSSH;"d:\qqquartus\quartus\bin;";"D:\java\jdk\bin;";"D:\j ...

+ ~~~~~~~~~~~~~~~

表达式或语句中包含意外的标记“D:\java\jdk\bin”。

所在位置 行:1 字符: 467

+ ... quartus\quartus\bin;";"D:\java\jdk\bin;";"D:\java\jdk\jre\bin;";D:\an ...

+ ~~~~~~~~~~~~~~~~~~~

表达式或语句中包含意外的标记“D:\java\jdk\jre\bin”。

所在位置 D:\anaconda\shell\condabin\Conda.psm1:76 字符: 9

+ Invoke-Expression -Command $activateCommand;

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : ParserError: (:) [Invoke-Expression], ParseException

+ FullyQualifiedErrorId : UnexpectedToken,Microsoft.PowerShell.Commands.InvokeExpressionCommand

无法激活 conda 环境。

请打开 Anaconda 提示符,然后在那里运行 D:\anaconda\condabin\conda.bat init powershell。

报错说明:

在Path环境变量中,路径被多余的引号 " 和分号 ; 包裹,导致PowerShell无法解析。 

因此,Conda在PowerShell中无法激活环境,还提示我执行初始化命令conda init powershell。

解决过程:

按下Win + R,输入sysdm.cpl,打开系统属性。点击"高级"选项卡,选择"环境变量"。在"系统变量"下,找到Path,点击编辑。

可以看到,我的环境变量是下面这样的,多了分号导致解析错误。因此我把最后三行后面的分号删去了。 

51c959ac51b14f11aee570a199e18e1e.png

然后,再在Anaconda Prompt中执行以下命令,初始化Conda环境支持PowerShell:

D:\anaconda\condabin\conda.bat init powershell

重新打开powershell,这时候应该会自动进入conda的base环境,你可以切换至你想要的环境。

报错2

然而,由于PowerShell执行策略限制,它禁止运行脚本,可能会导致如下报错:

. : 无法加载文件 C:\Users\86137\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参

阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。

所在位置 行:1 字符: 3

+ . 'C:\Users\86137\Documents\WindowsPowerShell\profile.ps1'

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : SecurityError: (:) [],PSSecurityException

+ FullyQualifiedErrorId : UnauthorizedAccess

报错说明:

PowerShell默认的执行策略是Restricted,这意味着:

不允许运行任何脚本(包括我们的profile.ps1文件,这是我们刚刚那个初始化命令生成的)。这是一种安全机制,防止未授权的脚本执行。

解决方法:

将执行策略设置为允许脚本运行,例如设置为 RemoteSigned(允许本地脚本,远程脚本必须有签名),这个是较推荐的执行策略,因为它平衡了安全性和灵活性。

具体步骤如下:

以管理员身份运行 PowerShell;

设置执行策略 在管理员 PowerShell 中运行以下命令:

Set-ExecutionPolicy RemoteSigned

然后输入Y(Yes)确认更改即可。

b48da16e3f184105960c93a888503087.png

现在关闭Powershell重新打开,会默认进入conda base环境,这是因为我们之前执行了conda init powershell这个命令,这个操作会修改PowerShell的profile.ps1文件,自动激活base环境。

如果你不希望PowerShell启动时自动进入base环境,可以使用以下命令关闭自动激活:

conda config --set auto_activate_base false

然后,关闭当前PowerShell 窗口,然后重新打开一个新的PowerShell,你应该看到base环境不会被自动激活

如果想要进入base环境,输入常用的指令手动激活即可:

conda activate base

abb8885ec97945048d8c01daa6512dec.png

网址:在Pycharm中使用conda环境(亲测) https://www.yuejiaxmz.com/news/view/544138

相关内容

Conda常用命令整理(列举已有环境\创建环境\进入环境) conda create
PyCharm+Python3.8+OpenCV4.1集成环境安装配置
彻底清理Conda环境:使用conda remove命令的终极指南
Conda的使用
conda清理工作:清理不需要的conda环境和包
优化Conda环境:深入掌握conda clean命令的清理艺术
【anaconda】conda创建、查看、删除虚拟环境(anaconda命令集)
Python3安装PyYAML
PyCharm:简化工作与生活,提升生产力的理想工具
win10安装mujoco200,mujoco

随便看看