启动VSCode时自动激活conda环境

时间:2019-08-07 08:49:59

标签: python visual-studio-code anaconda

设置

假设我有一个名为my_project的项目,该项目使用来自特定{@ 1}}的特定conda环境中的python解释器。当我设置项目的解释器时,我将在my_env的{​​{1}}目录中获得以下settings.json文件:

.vscode

问题

使用这种配置,我希望VSCode每次打开my_project时都能自动在终端中激活{ "python.pythonPath": "<path to conda>/envs/my_env/bin/python" } 。但是通常,当我打开my_env时,终端中只会激活anaconda的my_project环境。要激活my_project,我得到了全部都是手动的不同选项。

  1. base
  2. my_env并执行conda activate my_env
  3. 开始调试会话

可能还有更多的方法可以实现。

问题

如何避免这种情况,例如,当我打开strg+shift+p时,VSCode会自动在集成终端内部自动激活create new integrated terminal

其他信息

  • 操作系统:Linux
  • VSCode:1.36
  • Conda:4.7.10

4 个答案:

答案 0 :(得分:0)

另一种方法是创建激活快捷方式。例如,在〜/ .bashrc中,请执行以下操作

alias a="conda activate my_env"
alias d="conda deactivate"

因此,现在您只需要键入'a'来激活,然后键入'd'来取消激活。

答案 1 :(得分:0)

只要您在创建conda环境时指定了Python版本并为其命名(请参见docs on environments),就可以使用VS Code的Python扩展程序并支持conda环境。

如果无法按照上面的要求创建环境,解决此问题的一种方法是使用conda run,它将在运行代码时为您处理激活。

答案 2 :(得分:0)

  1. 创建工作区文件夹
  2. 在创建文件中,发布以下代码:
{
  "folders": [
      {
          "path": "."
      }
  ],
  "settings": {
      "python.condaPath": "/home/pcuser/anaconda3/condabin/conda",
      "python.pythonPath": "/home/pcuser/anaconda3/envs/my_env/bin/python",
      "python.terminal.activateEnvironment": true,
      "python.terminal.activateEnvInCurrentTerminal": true,
      
  }
}
  1. 保存配置并关闭vscode
  2. 打开vscode。

它将自动选择conda环境(应显示在vscode的左下方)。 内部端子“ my_env”也将被选择。如果在打开终端之前vscode没有选择“ Python Selected Interpreter”,则不会选择内部终端my_env。 vscode选择my_env后打开终端

答案 3 :(得分:-1)

当我在系统中有多个具有虚拟环境的python项目时,确实遇到了类似的问题。

由于我是根据工作量切换项目的,因此很难为特定项目激活正确的环境。

由于VSCODE包含settings.py,这些存储用于在特定项目中使用的python路径。但是没有自动激活。

我遵循了以下步骤,与我搜索的其他方法相比,它非常快。

步骤1.删除当前端子。您将看到下图所示的bin图标。

enter image description here

第2步。现在通过快捷方式启动新终端。

CTRL +`

您将看到VSCODE自动检测python路径设置并激活环境。

简单