我让Anaconda在我的系统上运行并且VsCode工作,但是如何在运行我的python脚本时让VsCode激活特定的环境?
答案 0 :(得分:27)
答案 1 :(得分:23)
如果Anaconda是您的默认Python安装,那么只有安装Microsoft Python extension才能正常工作。
无论Python编辑器如何,或者您需要指向特定安装,以下内容都应该有效:
在settings.json中使用类似
的内容编辑python.path"python.pythonPath": "C:\\Anaconda3\\envs\\py34\\python.exe"
Instructions编辑settings.json
答案 2 :(得分:10)
我找到的最佳选择是将vscode settings中的python.venvPath
参数设置为您的anaconda envs文件夹。
"python.venvPath": "/Users/[...]/Anaconda3/envs"
然后,如果你打开命令面板({/ 1}}在windows / linux上,ctl + shift + P
在mac上)并输入cmd + shift + P
,你的所有env都会显示出来,你可以选择哪个env到使用。
还需要为Select Workspace Interpreter选项安装python extension。
注意:使用当前版本的VSCode,选择工作区解释器大约需要10秒才能在我的计算机上显示。
答案 3 :(得分:9)
虽然已批准answer是正确的,但我希望显示一些不同的方法(基于此answer)。
如果从中启动vscode,Vscode可以自动选择正确的anaconda环境。只需添加到用户/工作区设置:
{
"python.pythonPath": "C:/<proper anaconda path>/Anaconda3/envs/${env:CONDA_DEFAULT_ENV}/python"
}
适用于Windows,macOS和Unix。进一步阅读vscode中的变量替换:here。
答案 4 :(得分:6)
不幸的是,这不适用于macOS。尽管我的.zshrc中有export CONDA_DEFAULT_ENV='$HOME/anaconda3/envs/dev'
,而我的VSCode prefs中有"python.pythonPath": "${env.CONDA_DEFAULT_ENV}/bin/python",
,但内置终端不使用该环境的Python,即使我从命令行启动了VSCode,变量已设置。
答案 5 :(得分:2)
如果您的项目需要独立的环境: 使用--prefix选项将您的环境安装到项目文件夹:
conda create --prefix C:\your\workspace\root\awesomeEnv\ python=3
在VSCode launch.json配置中设置你的&#34; pythonPath&#34;到:
"pythonPath":"${workspaceRoot}/awesomeEnv/python.exe"
答案 6 :(得分:1)
我尝试在VSCode settings.json中设置python.pythonPath,但是对我来说不起作用。
根据Anaconda文档“ Microsoft Visual Studio Code (VS Code)”,其中
When you launch VS Code from Navigator, VS Code is configured to use the Python interpreter in the currently selected environment.
。
按照上述说明操作,我可以在某些Anaconda环境上正常工作。
答案 7 :(得分:1)
只需从 VS Code
启动 Anaconda Navigator
。它对我有用。
答案 8 :(得分:0)
我发现一个hacky解决方案替换原始python文件的enviornment变量,所以它可以从你的anaconda文件夹中调用python.exe,所以当你引用python时它将引用anaconda的python。
所以你在env var中唯一的python路径应该是
"C:\Anaconda3\envs\py34\", or where ever the python exe lives
如果您需要更多细节,我不介意解释。 :)
答案 9 :(得分:0)
在此处找到注释:https://code.visualstudio.com/docs/python/environments#_conda-environments
如前所述,Python扩展会自动检测现有的 conda环境,前提是该环境包含Python 口译员。例如,以下命令创建一个conda Python 3.4解释器和几个库的环境, 哪个VS代码然后显示在可用的解释器列表中:
conda create -n env-01 python=3.4 scipy=0.15.0 astroid babel
相反,如果您未能指定解释器,例如conda create --name env-00,该环境将不会出现在列表中。
答案 10 :(得分:0)
我发现如果我们不指定我们想要创建的python版本是完全空的。因此,为了解决这个问题,我所做的是我也提供了 python 版本。即
conda create --name env_name python=3.6
所以它现在所做的是安装python 3.6,现在我们可以选择解释器。为此,请按照以下步骤操作:
首先,使用 Ctrl + Shift + P
其次,选择Python: select Interpreter
现在,选择Enter interpreter path
我们必须添加env所在的路径,默认位置是
C:\Users\YourUserName\Anaconda3\envs\env_name
最后,您已成功激活您的环境。 它现在可能是最好的方法,但它对我有用。如果有任何问题,请告诉我。
答案 11 :(得分:0)
由于我无法通过建议的方法解决我的问题,我将分享我的修复方法。
首先,即使我能够激活环境,C:\ProgramData\Anaconda3\envs
目录中也没有相应的环境文件夹。
所以我使用 Anaconda prompt 创建了一个新的 anaconda 环境,
将在 envs
文件夹中创建一个与您给定的环境名称相同的新文件夹。
接下来,我在 Anaconda 提示符下激活了该环境。
使用 conda install python
命令安装了 python。
然后在 anaconda navigator 上,在“Applications on”菜单中选择新创建的环境。 通过 Anaconda navigator 启动 vscode。
现在正如其他答案所建议的那样,在 vscode 中,使用 Ctrl + Shift + P
键盘快捷键打开命令面板。
已搜索并选择 Python: Select Interpreter
如果没有列出新创建环境的解释器,请选择 Enter Interpreter Path
并选择新创建的 python.exe,其位置类似于 C:\ProgramData\Anaconda3\envs\<your-new-env>\
。
所以总路径看起来像 C:\ProgramData\Anaconda3\envs\<your-nev-env>\python.exe
下次该口译员将自动列在其他口译员中。
现在您可能会在 vscode 的左下角看到您选择的 conda 环境。
答案 12 :(得分:0)
Conda Path
现在已弃用,现在您应该改为设置 ctrl + ,
。这样您就可以随时选择不同的环境。
点击 Conda Path
然后搜索 C:\Users\{myUser}\miniconda3\Scripts\conda.exe
并添加脚本的绝对路径,例如:
ctrl + Shift + P
在左下角或通过命令面板为每个项目选择特定环境(Python: Select Interpreter
-> 搜索hub.KerasLayer
)