繁体   English   中英

VSCode 无法识别 venv

[英]VSCode does not recognize venv

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

我读了这个问题:

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

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

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

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

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

问题仍然没有解决。

这是我的问题的截图:

测试工作区屏幕截图

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

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

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

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

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

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

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

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

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

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

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

所以,现在建议手动选择环境路径。

在 VS CodeTerminal 中编写此命令后

python -m venv env

你可以简单地使用

.\env\Scripts\Activate

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

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

所以我遇到了同样的问题,我通过以下方式解决了它,

1. 在 VSCode 中打开设置。

2.搜索“python.terminal.activateEnvironment”

3. 如果未选中/未选中,则选中/选中“用户”和“工作区”。

问题不在于 VSCode,而在于我正在处理的工作区设置。 只是改变了这一点,瞧,它就像一个魅力。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM