在Ubuntu中使用带有Visual Studio代码的Python的Virtualenv

我有一个Python项目和导航/自动完成在项目的文件中完美的工作。 我想指定一个virtualenv,以便导航/自动完成与virtualenv中的包一起工作。

我在settings.py中尝试过,但导航/自动完成不起作用。 另外通过设置"python.pythonPath":"~/dev/venvs/proj/bin/python杀死了原来的导航/自动完成。

 { "editor.rulers": [80,100], "python.autoComplete.extraPaths": [ "~/dev/venvs/proj", "~/dev/venvs/proj/lib" ] } 

通过扩展的最新更新,您只需指定“python.pythonPath”,如下所示。 “python.autoComplete.extraPaths”的值将在运行时确定,但是您仍然可以自由指定自定义path。

一旦必要的更改,请记得重新启动VS代码。

 { "editor.rulers": [80,100], "python.pythonPath":"~/dev/venvs/proj/bin/python" } 

截至2016年9月(根据Github的扩展回购文档 ),您可以在vscode内执行一个命令,让您从自动生成的已知解释器列表(包括项目虚拟环境中的解释器)中select解释器。

如何使用这个function?

  • select命令Python: Select Workspace Interpreter从命令选项板 (F1)中Python: Select Workspace Interpreter

  • 在select上述命令后,一个发现的解释器列表将显示在一个quick pick列表中。

  • 从这个列表中select一个解释器会自动更新settings.json文件

使用Visual Studio代码的最新Python扩展,有一个venvPath设置: // Path to folder with a list of Virtual Environments (eg ~/.pyenv, ~/Envs, ~/.virtualenvs). "python.venvPath": "", // Path to folder with a list of Virtual Environments (eg ~/.pyenv, ~/Envs, ~/.virtualenvs). "python.venvPath": "",

在macOS上,转到Code > Preferences > Settings然后向下滚动到Pythonconfiguration

find"python.venvPath: "",点击左边的铅笔打开你的用户设置,最后添加你存储virtualenvs的path。

如果您使用的是virtuanenvwrapper,或者您已经将所有的虚拟环境设置放在一个文件夹中,这将是您的一个。

很简单,最新的VSCode,如果你已经安装了VSCode的Python扩展

Shift + Command + P

types:select工作区解释器

select你的虚拟环境。

另一种方法是使用virtualenv设置从terminal打开VSC。

暂时的答案。 我把虚拟环境的python可执行文件的绝对path以及包。 然后我重新启动VS代码。

我试图获得$ {workspaceRoot}以避免硬编码绝对path,请帮助,如果你成功了。

 { "editor.rulers": [80,100], "python.pythonPath": "/home/jesvin/dev/ala/venv/bin/python", "python.autoComplete.extraPaths": [ "/home/jesvin/dev/ala/venv/lib/python2.7", "/home/jesvin/dev/ala/venv/lib/python2.7/site-packages" ] }