VS Code终端使用不同的Python解释器
默认情况下,它不知道您的解释器,并将使用操作系统中的默认.bashrc
或等效项进行初始化。
我在2021年2月的一个问题中找到了两个相关的设置。勾选第二个选项Python > Terminal: Activate Environment
可以自动激活虚拟环境:
在
settings.json
中,它被称为
"python.terminal.activateEnvironment": true
。
更新(2021年8月8日):
今天当我在Windows上从VS Code打开终端时,它自动插入了一行代码
& C:/Users/[UserName]/[venv]/Scripts/Activate.ps1
来激活与所选Python解释器关联的适当环境!
看起来前面提到的设置现在是默认行为。
虽然
2021年7月发布说明(版本1.59)中有关于终端行为的更改,但我没有看到明确提到虚拟环境激活的内容。
新行为在“
环境和终端窗口”中有文档记录。
"python.pythonPath"
已经被弃用 (链接1)
因此,大多数以前的答案已过时。
请改用 "python.defaultInterpreterPath"
:
2021.6.0(2021年6月16日)
5. 在 pythonDeprecatePythonPath 实验中,在工作区级别添加了 python.defaultInterpreterPath 设置。(#16485)
8. 当在 pythonDeprecatePythonPath 实验中时,显示 python.pythonPath 弃用提示。(#16485)
2020.7.0(2020年7月16日)
9. 在 Deprecate PythonPath 实验中,提醒用户我们已删除其工作区设置中的 pythonPath。(#12533)
2020.5.0 (2020年5月12日)
6. 如果在DeprecatePythonPath实验中,将现有的python.pythonPath设置值一次性转移到新的Interpreter存储中。 (#11052)
8. 添加提示,询问用户在Deprecate PythonPath实验中是否删除他们的工作区设置中的python.pythonPath键。 (#11108)
12. 将用于在launch.json中引用设置中设置的解释器路径的字符串${config:python.pythonPath}重命名为${config:python.interpreterPath}。 (#11446)
2020.4.0 (2020年4月20日)
13. 添加了一个用户设置python.defaultInterpreterPath,在Deprecate PythonPath实验中设置默认的解释器路径。 (#11021)
如果您希望为所有工作区设置默认的Python解释器,请使用Ctrl+Shift+P
打开设置,选择Preferences: Open User Settings
并搜索Python: Default Interpreter Path
。否则,如果您只想为当前工作区设置它,请改用Preferences: Open Workspace Settings
。
在您的情况下,您希望将其设置为
${workspaceFolder}/env/bin/python3.6
。
如果您直接编辑
settings.json
而不是使用GUI:
{
"python.defaultInterpreterPath": "${workspaceFolder}/env/bin/python3.6"
}
详细的指导说明可以在文档
"手动指定解释器"中找到,其中包括使用环境变量作为解释器路径的方法。
zsh
,并默认为2.7
。将解释器更改为3.6
并在VS Code中打开bash
后,一切都很好。 - kevin_theinfinityfund