在VsCode中激活Anaconda环境

ctr*_*373 36 python anaconda visual-studio-code

我有Anaconda在我的系统和VsCode上工作,但是如何在运行我的python脚本时让VsCode激活特定的环境?

Vai*_*v K 36

简单地使用

  1. shift + cmd + P.
  2. 搜索选择解释器

pyhton:选择Interpreter

  1. 选择它,它将显示通过conda和其他python版本创建的虚拟环境列表

激活conda虚拟环境

  1. 选择环境,你准备好了.

  • 这有效.但是,当我尝试使用CodeRunner扩展程序运行脚本时,它似乎没有意识到我在conda环境中并且给出了一个错误,说模块不存在 (3认同)
  • 是的,这似乎并没有给终端会话一个路径变量或设置系统或用户PATH变量,即使是在虚拟环境中也是如此。 (2认同)
  • 它有效,但我的情况还有另一个问题!当我选择“python:选择解释器”选项时,它不会显示所有 anaconda 环境!实际上它只是显示了我不想要的其中两个。有人有什么想法吗? (2认同)

eri*_*lin 25

如果Anaconda是您的默认Python安装,那么只有在您安装Microsoft Python扩展时它才有效.

无论Python编辑器如何或者您需要指向特定安装,以下内容都应该有效:

在settings.json中编辑python.path

"python.pythonPath": "C:\\Anaconda3\\envs\\py34\\python.exe"
Run Code Online (Sandbox Code Playgroud)

编辑settings.json的说明

  • 但是,如何激活特定环境,以便脚本在该Anaconda环境中运行? (6认同)
  • vscode现在有了`python.venvPath`设置,允许你在命令面板中使用`Python:Select Workspace Interpreter`来选择env(详见我的答案).这样,每次更改envs时都不必编辑pythonpath. (5认同)
  • 仅此 settings.json 还不够。似乎还需要 launch.json 才能在 OSX 上工作,例如: "python.pythonPath": "/Users/me/miniconda2/envs/py27/bin/python" (2认同)

ale*_*ari 12

我找到的最佳选择是将vscode设置中python.venvPath参数设置为anaconda envs文件夹.

"python.venvPath": "/Users/[...]/Anaconda3/envs"
Run Code Online (Sandbox Code Playgroud)

然后,如果你打开命令调色板(ctl + shift + P在windows/linux上,cmd + shift + P在mac上)并输入Python: Select Workspace Interpreter你所有的envs将显示,你可以选择使用哪个env.

Python扩展也将需要安装的选择工作区翻译选项.

注意:使用当前版本的VSCode,选择工作区解释器大约需要10秒钟才能在我的计算机上显示.

  • 在更新的版本中,命令是“Python:选择解释器” (4认同)

pko*_*zyk 10

虽然批准的答案是正确的,但我想展示一种不同的方法(基于这个答案).

如果从中启动vscode,Vscode可以自动选择正确的anaconda环境.只需添加到用户/工作区设置:

{
    "python.pythonPath": "C:/<proper anaconda path>/Anaconda3/envs/${env:CONDA_DEFAULT_ENV}/python"
}
Run Code Online (Sandbox Code Playgroud)

它适用于Windows,macOS和Unix.进一步阅读vscode中的变量替换:这里.

  • 谢谢你的回答.在Linux上,它是`{"python.pythonPath":"/ <正确的路径>/anaconda3/envs/$ {env:CONDA_DEFAULT_ENV}/bin/python"}`.此外,我必须在更改环境后重新打开VS代码. (2认同)

Moh*_*ari 7

只需VS Code从启动Anaconda Navigator. 这个对我有用。


Chr*_*eck 6

不幸的是,这在macOS上不起作用。尽管我的.zshrc export CONDA_DEFAULT_ENV='$HOME/anaconda3/envs/dev'"python.pythonPath": "${env.CONDA_DEFAULT_ENV}/bin/python", VSCode偏好设置中都包含一个事实,但是即使我从设置了该变量的命令行启动了VSCode,内置终端也不会使用该环境的Python。


小智 6

python.pythonPath在VSCode的settings.json文件中设置对我不起作用,但是另一种方法可以。根据Microsoft Visual Studio Code(VS Code)上的Anaconda文档:

从导航器启动VS Code时,VS Code被配置为在当前选定的环境中使用Python解释器。

Anaconda Navigator