pyCharm终端不激活conda环境

pip*_*ish 14 python pycharm anaconda conda miniconda

我在Windows的默认位置有一个conda环境,这是C:\ProgramData\Anaconda2\envs\myenv.此外,根据建议,conda脚本和可执行文件不在%PATH%环境变量中.我在pycharm中打开了一个项目并指向python解释器 C:\ProgramData\Anaconda2\envs\myenv\python.exe ,pycharm似乎与python控制台,运行环境和调试模式中的环境配合良好.

但是,打开终端时,环境未激活(我确保选中了激活环境的复选框).要清楚 - 当我使用virtualenv做同样的事情时,终端确实可以毫无问题地激活环境.

这里有一些我尝试过但没有用的东西:

  • 将激活脚本从anaconda文件夹复制到环境文件夹
  • 将激活脚本从anaconda文件夹复制到Scripts环境下的文件夹
  • 复制virtualenv中的激活脚本(激活环境的相同脚本)
  • 在路径中添加了anaconda文件夹

这些都没有奏效.终端打开后,我可以手动激活环境,但是如何自动完成?

dar*_*nge 13

我遇到了同样的问题并使用了这个解决方案.

  1. 去吧File -> Settings -> Tools -> Terminal.

  2. 替换值Shell pathcmd.exe "/K" C:\path\to\Anaconda3\Scripts\activate.bat your_environment_name.

如果我安装了Anaconda C:\Anaconda3并且有一个名为的环境myenv,那么我的设置将如下所示:

终端工具应用设置

  • 谢谢!这是一个很好的解决方法,但如果我有多个环境用于测试目的,它将无法工作.此外,Linux/mac当然需要一些小的改动 (3认同)

voi*_*oid 8

这似乎是一个已知问题.

  • 它尚未修复/重新出现,版本 2021.1.3 (3认同)
  • 仅供参考:该问题已在 2019.1 版本中修复。 (2认同)

Kar*_*rik 8

在Windows&Pycharm 2022.1和conda环境上遇到了这个问题我的解决方案是将默认的Powershell更改为cmd shell

  1. 打开设置 > 工具 > 终端
  2. 将 Shell 路径从“powershell.exe”更改为“cmd.exe” 在此输入图像描述
  3. 确保选中“激活 virtualenv”复选框。

新终端在配置的环境下正确打开。


Red*_*yed 7

Windows 解决方案

转到Settings-> Tools->Terminal
设置Shell path为:

  1. 对于powershell(我推荐这个):
    powershell.exe -ExecutionPolicy ByPass -NoExit -Command "& 'C:\tools\miniconda3\shell\condabin\conda-hook.ps1'"
  2. 为了cmd.exe
    cmd.exe "C:\tools\miniconda3\Scripts\activate.bat"

PyCharm 将在终端中自动更改环境
PS:我正在使用我的 miniconda 路径,因此请将其替换为你的路径


Roa*_*ald 7

Windows 和 Powershell

我使用了此处答案和此答案中的部分答案,在Windows上使用Powershell提出了以下解决方案

  1. 转到文件 > 设置 > 终端
  2. 对于每个项目,在环境变量下添加以下内容。这里对于每个项目,您需要将venv_name名称更改为您的虚拟环境名称。
    • CONDA_ENV=venv_name
  3. 对于 shell 路径,请使用以下内容。您无需为每个项目进行更改,因为它使用您在上一步中声明的环境变量。只需编辑 Anaconda/Miniconda 安装路径即可。
    • powershell.exe -ExecutionPolicy ByPass -NoExit -Command "& 'C:\path\to\miniconda3\shell\condabin\conda-hook.ps1' ; conda activate $env:CONDA_ENV "


Muh*_*nan 6

如果有人想知道 Linux 的设置,这里是如何做的。.pycharmrc在您的家中创建一个文件dir。打开文件并添加以下内容

source ~/.bashrc
source ~/anaconda3/bin/activate your_env_name 
Run Code Online (Sandbox Code Playgroud)

现在去 PycharmFile > Settings > Tools > Terminal > Shell path/bin/bash --rcfile ~/.pycharmrc.

现在,当您打开终端时,指定的 conda env 将激活。


Eth*_* Li 6

这是我针对 MacOS 或 Linux 用户的解决方案:

首先,将其添加到您的~/.bash_profile~/.zshrc取决于您的 shell。记得把它放在 conda 初始化之后:

##### Activate conda env ######
[[ -n $CONDA_ENV ]] && conda activate $CONDA_ENV
Run Code Online (Sandbox Code Playgroud)

然后转到 PyCharm 设置,转到“项目设置”中的“工具”->“终端”,添加CONDA_ENV=yourenv到环境变量中。

yourenv是您针对此特定项目的环境名称conda

  • 这是一个好主意,但是:(1) 首先我必须只运行一次 `conda init bash` (2) 我必须在建议的行之前添加 `conda deactivate`,否则 conda 默认激活 `base` env ( 3) `-n` 应该不是必需的。 (2认同)