VSCode 无法识别 venv(Python)

VSCode does not recognize venv(Python)

当我使用 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,但是问题依然存在

我读了这个问题:

我知道如何手动添加环境,但我希望 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

在 VS CodeTerminal 中写入此命令后

python -m venv env

您可以简单地使用

.\env\Scripts\Activate

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

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

Virtual environments located in the folder identified by the python.venvPath setting (see General settings), which can contain multiple virtual environments. The extension looks for virtual environments in the first-level subfolders of venvPath.

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

Virtual environments located directly under the workspace (project) folder.

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

并且解释器存储有一些变化:

A VSCode internal storage is introduced which will now store the interpreter settings in the workspace & workspace folder scope.

详情可参考here

因此,建议暂时select手动设置环境路径。

出于某种原因 VSCode 卸载了我所有的 Python 扩展,包括主要的 Python 扩展。重新安装它们后,它能够再次检测到我的 virtualenvs。