在VS Code中使用Python virtualenv
在Python中所谓"环境"是指Python程序的运行上下文。Python环境包含了Python解释器和一系列安装的Python包。VS Code的Python扩展提供了不同环境的有效集成工作功能。
选择和激活环境
默认情况下,Python扩展会搜索和使用在系统目录中找到的第一个Python解释器。如果VS Code没有找到任何解释器,就会提示一个警告。在macOS中,VS Code扩展也会在使用系统预装Python解释器时候提示一个警告,因为通常用户都是直接安装使用解释器。不管哪种情况,你都可以通过设置 python.disableInstallationCheck 为 true 来关闭告警。
选择指定环境,在
Command Palete(⇧⌘P)中选择使用Python:Select Interpreter
备注
扩展自动从以下位置查找解释器:
标准安装目录,如
/usr/local/bin,/usr/sbin,/sbin,c:\\python27,c:\\python36等在workspace(项目)目录下直接定位虚拟环境
在General settings中设置
python.venvPath指定Python虚拟环境,这个设置可以包含多个虚拟环境。扩展会查看venvPath的5层子目录中的虚拟环境对 virtualenvwrapper 的
~/.virtualenvs指定目录的虚拟环境通过 pyenv 安装的解析器
为 virtualenvwrapper 使用的通过
WORKON_HOME指定的路径中的虚拟环境Conda环境包含的Python解析器
在workspace(项目)目录下的
.direnv目录下安装的解析器
我使用 General settings中设置 python.venvPath 指定Python虚拟环境:
在 Workspace Settings中设置 python.pythonPath 中设置好自己的解析器(原先设置内容是 python ,修订成 ~/venv3/bin/python ):
这两个配置完成后,检查 $HOME/Library/Application\ Support/Code/User/settings.json 可以看到如下配置:
...
"python.venvPath": "~/venv3",
"python.pythonPath": "~/venv3/bin/python",
...
完成以上
python.venvPath和python.pythonPath设置之后,需要重启一次VS Code,然后使用Python:Select Interpreter就会看到默认的解释器就是虚拟环境中的Python了:~/venv3/bin/python
上述设置之后,在 VS Code中启动一个内建的Terminal可以看到如下输出:
source /Users/huatai/venv3/bin/activate
huatai@my-studio onesre % source /Users/huatai/venv3/bin/activate
(venv3) huatai@my-studio onesre %
则证明已经启动Python Virtualenv环境,并且在Terminal中执行 python 进入交互模式,并执行 import 模块名 检查你之前安装过的模块,例如 Django 不应该有任何报错。