如何在VS Code中为Python设置虚拟环境?

时间:2019-01-09 08:40:46

标签: python visual-studio-code

在我的项目文件夹中,创建了venv文件夹。

python -m venv venv

当我在VS Code中运行命令select python interpreter时,我的venv文件夹未显示。我像建议的here一样上了一层,但是VS Code没有看到我的虚拟解释器。

我想念什么?

17 个答案:

答案 0 :(得分:41)

使用更新的VS Code版本,非常简单。

在项目文件夹中打开VS Code。

然后打开Python Terminal(Ctrl-Shift-P:Python:创建终端)

在终端机中:

python -m venv .venv

然后您将看到以下对话框: enter image description here

点击Yes

然后Python: Select Interpreter(通过Ctrl-Shift-P键)

并选择选项(在我的情况下,朝底部)

Python 3.7 (venv) ./venv/Scripts/python.exe

如果看到

Activate.ps1没有经过数字签名。您无法在当前系统上运行此脚本。

您需要执行以下操作:https://stackoverflow.com/a/18713789/2705777

有关更多信息,请参见:https://code.visualstudio.com/docs/python/environments#_global-virtual-and-conda-environments

答案 1 :(得分:5)

我在不更改python路径的情况下解决了该问题,因为这似乎不适合我。以下解决方案对我有用,希望它对您也有用:))

  1. 在Linux / Mac中的Windows / shell中打开cmd。
  2. 激活您的virtualenv(如果使用Power Shell,则使用源activate / activate.bat / activate.ps1)

    post_max_size

  3. 导航到您的项目目录并在其中打开vscode。

    C:\Users\<myUserName>\Videos\myFolder>django-project\Scripts\activate.bat (django-project) C:\Users\<myUserName>\Videos\myFolder>

  4. 在VS代码中,转到文件->首选项->设置(不用担心您不需要打开json文件)

  5. 在设置搜索栏中搜索virtual / venv,然后按Enter。您应该在搜索栏中找到以下内容:

Python:Venv文件夹主目录中要查找的文件夹 虚拟环境(通过以下方式支持pyenv,direnv和virtualenvwrapper: 默认)。

  1. 添加项目,然后输入其中包含激活文件的virtuanenv脚本的路径。例如在我的系统中,是:

    (django-project) C:\Users\prash\Videos\myFolder\projects>code .

  2. 保存并重新启动VS Code。

  3. 要重新启动,请再次打开cmd,导航到您的项目路径并打开vs代码。 (请注意,在打开vsd命令之前,应先在cmd中激活venv)

从cmd打开vs代码的命令:

C:\Users\<myUserName>\Videos\myFolder\django-project\Scripts\

How to setup virtualenv in VS code

答案 2 :(得分:2)

有一个称为“ Python Auto Venv”的VSCode扩展,可以自动检测并使用您的虚拟环境。

答案 3 :(得分:2)

这是@Sam答案的补充,尽管正确,但缺少以下事实:您每次在Visual Studio代码中打开文件夹时,都会创建一个.vscode文件夹,但这些文件夹可以是多个,最终您可以在每次打开文件夹时创建目录。 .vscode文件夹具有JSON对象,这些对象具有诸如“ setting.json”之类的属性,其中一个对象声明了要在该“ .vscode”级别使用的解释器(有关更多说明,请参见此What is a 'workspace' in VS Code?)。

{
   {
     "python.pythonPath": "VirtualEnPath/bin/python3.6"
   }
}

因此,潜在地您可以在虚拟Env中的另一个级别打开VS代码,它会创建另一个.vscode文件夹,该文件夹假设该全局计算机的目录为Python目录,因此会出现此类错误,并且如果虚拟环境是否已激活。

这确实发生在我身上,我确实有一个DjangoRESTAPI_GEN文件夹,我最初在其中打开了IDE,并且它确实识别了Virtual Env Python路径,几天后,我在git所在的级别将其打开,因此确实创建了另一个.vscode,该代码选择了全局Python解释器,导致我的虚拟环境中的lint未被使用,并且虚拟环境解释器甚至没有显示在“ select python解释器”中。但是,正如在以具有正确路径的settings.json的.vscode的级别打开IDE一样,它确实如此。

一旦在setting.json中设置了正确的路径并选择了虚拟环境解释器,则VS Code将自动在其终端中激活VE

enter image description here

答案 4 :(得分:1)

每次使用venv进行VS-Code时,我几乎都遇到相同的问题。我按照以下步骤操作,希望对您有所帮助:

  1. 转到File > preferences > Settings
  2. 单击Workspace settings
  3. Files:Association下,您会找到Edit in settings.json并单击。
  4. 在工作空间设置下
  5. 更新"python.pythonPath": "Your_venv_path/bin/python"。 (对于Windows):在工作区设置下更新"python.pythonPath": "Your_venv_path/Scripts/python.exe"

  6. 如果VSCode仍然不显示您的静脉,请重新启动。

答案 5 :(得分:1)

我遇到了同样的问题,解决方案非常简单:

”如果在VS Code运行时创建新的conda环境,请使用 重新加载窗口命令以刷新显示的环境列表 Python:选择解释器;否则您可能看不到环境 那里。可能需要很短的时间才能出现。如果您看不到 首先,等待15秒钟,然后再次尝试使用该命令。”

那是写在Vscode site

上的

注意:要重新加载窗口:在Vscode中按ctrl + shift + p,然后编写重新加载窗口

答案 6 :(得分:1)

许多人提到了python.pythonPath方法。

另一种方法是在envFile中添加一个launch.json,如下所示:

    {
        "name": "Run",
        "etc": "etc",
        "envFile": "${workspaceFolder}/venv"
    }

答案 7 :(得分:0)

在遇到问题之前,我一直遇到同样的问题,我试图将我的项目目录和虚拟环境设置为一个相同的对象,这是不正确的。

我有一个\ Code \ Python projects目录,我在其中存储了所有Python项目。 我的python 3安装在我的Path上

如果我想使用自己的虚拟环境创建一个新的python项目(Project1),则可以执行以下操作:

  1. python -m venv代码\ Python \ Project1 \ venv

然后只需在Visual Studio Code中打开文件夹(Project1),即可确保使用正确的虚拟环境。

答案 8 :(得分:0)

我遇到了同样的问题,这是因为未更新PowerShell。有时Windows会保留版本2. *,而我不得不手动下载并安装版本3。 解决该问题后,我可以很好地使用虚拟环境。

答案 9 :(得分:0)

您是否激活了环境?您也可以尝试以下方法: vscode select venv

答案 10 :(得分:0)

在vscode中选择文件夹并创建WS,它将正常工作

答案 11 :(得分:0)

问题是如何在VSCode中创建新的虚拟环境,这就是为什么告诉以下Anaconda解决方案可能不是该问题的必要答案的原因。它仅与Anaconda用户相关。

只需使用conda创建venv,请参见here。然后打开VSCode并在左下方的VSCode中显示的VSCode解释器上单击鼠标左键:

vscode interpreter info

选择一个虚拟环境,该虚拟环境会在“设置”窗口的下拉菜单中弹出,您已完成。注意@RamiMa的答案。

答案 12 :(得分:0)

对于Mac用户,请注意这个bug:当你点击“输入解释器路径”时,你有两个选择:(1)手动输入路径; (2) 从 Finder 中选择 venv 文件。

它只有在我手动输入路径时才有效。使用 Finder 进行选择会产生一些奇怪的路径,例如我理解的 Library/Developer/CommandTools/...

答案 13 :(得分:0)

  1. 如果您在 Mac 上使用 Visual Studio Code,那么将 venv 安装在与工作区相同的目录中很重要。

  2. 就我而言,我的 venv 位于不同的目录中(不在我的项目工作区中),因此将我的 venv 简单剪切/复制粘贴到项目工作区即可。

  3. 一旦您的 venv 被复制到项目工作区,您的 Visual Studio Code 就会选择它并显示一条通知,让您可以选择选择 venv 作为解释器。

答案 14 :(得分:0)

创建虚拟环境的步骤:

  1. 转到包含项目的文件夹
  2. python3 -m venv evn_name
  3. source evn_name/bin/activate
  4. 重新启动终端,现在您将能够在每个终端行的前面看到 (env_name)

现在您可以在虚拟环境中安装所需的库

  1. pip3 install -r requirement.txt
  2. 如果需要重新启动代码编辑器

停止在虚拟环境中工作类型:deactivate

删除虚拟环境类型:rm -rf evn_name

答案 15 :(得分:0)

假设您已经创建了一个名为 venv 的 virtualenv 文件夹。

您可以通过在安装 venv 的目录中键入以下命令轻松激活它。

.\venv\Scripts\activate

答案 16 :(得分:0)

如果您已经拥有 virtualenvs,则只需打开 VSCode 首选项 (Ctrl + ,) 并搜索 venv。然后将 virtualenvs 的路径添加到 “Venv Path” 设置中,如下所示:

enter image description here

可以在此处找到更多信息: https://techinscribed.com/python-virtual-environment-in-vscode/