VSCode 无法识别 venv(Pyt​​hon)

问题描述

当我使用 venv python 包创建新项目和虚拟环境时,VSCode 无法识别新的虚拟环境。我按照以下说明进行操作:

https://code.visualstudio.com/docs/python/environments

我在VSCode集成终端中使用的命令是:

python -m venv .venv

我使用的终端是 PowerShell 7,但我也尝试了 CMD 终端。

运行此命令后,.venv 文件夹在工作区中创建得很好,我在终端上检查了它的行为。

我尝试使用 conda 包管理器来创建一个 venv,并且 VSCode 可以识别它。问题仅在于 venv Python 包。

我也尝试了另一个Python版本来创建venv,但问题依然存在。

我读了这个问题:

How can I set up a virtual environment for Python in Visual Studio Code?

我知道如何手动添加环境,但我希望 VSCode 能够自动识别我的环境。

我将这些行添加到 settings.json(首选项):

"python.venvPath": "~/.venv","python.venvFolders": [
    "~/.venv/Scripts"
]

我使用 VSCode 集成终端手动激活了 venv。

问题仍未解决

这是我的问题的截图:

A testing workspace screenshot

我知道如何手动添加环境,但我希望它是自动的。

我在另一台 PC 上尝试过 VSCode,它奏效了;除了 venv 的存在,它不需要做任何事情。

我真的不知道我还能做什么。 请帮助我。

VSCode 版本:1.58.0 Python 扩展版本:v2021.6.944021595

解决方法

“python.venvPath”应设置为 parent folder 文件夹的 .venv

位于由 python.venvPath 设置(参见常规设置),其中可以包含 多个虚拟环境。该扩展程序查找虚拟 venvPath 的第一级子文件夹中的环境。

但是,您不需要设置它。 Python 扩展应找到 venv 环境,因为它就位于您的工作区文件夹下。

直接位于工作区(项目)下的虚拟环境 文件夹。

我在本地尝试过,它也不起作用。它只会显示缓存的环境路径,“python.venvPath”也不起作用。

解释器存储有一些变化:

引入了 VSCode 内部存储,现在将存储 工作区和工作区文件夹范围内的解释器设置。

您可以参考here了解更多详情。

所以,目前建议手动选择环境路径。

,

在 VS CodeTerminal 中编写此命令后

python -m venv env

你可以简单地使用

.\env\Scripts\Activate

在您创建虚拟环境的同一目录路径中。