当前位置: 首页 > 知识库问答 >
问题:

VSCode无法识别venv

韶兴德
2023-03-14

当我使用venv python包创建一个新项目和虚拟环境时,VSCode无法识别新的虚拟环境。我遵照贝娄的指示:

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

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

python -m venv .venv

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

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

我尝试使用 conda 包管理器来创建一个 venv,VSCode 可以识别它。问题只出在 venv 蟒蛇包上。

我还尝试了另一个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

共有3个答案

姬朗
2023-03-14

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

都乐逸
2023-03-14

在VS CodeTerminal中编写了这个命令之后

python -m venv env

你可以简单地使用

.\env\Scripts\Activate

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

汪泓
2023-03-14

“python.venvPath”应设置为< code >的< code >父文件夹。venv文件夹。

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

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

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

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

解释器存储有一些变化:

引入了VSCode内部存储,现在将解释器设置存储在工作区中

有关更多详细信息,请参阅此处。

因此,建议暂时手动选择环境路径。

 类似资料:
  • 我有以下序列

  • 我不确定这是否是一个与我没有这台计算机的管理权限有关的问题。任何帮助,以便我可以进一步排除故障,将非常感谢! 谢谢

  • 问题内容: 我使用,当我得到 我删除了构建路径,然后又做了 ,仍然是同样的错误。 问题答案: 该代码不是Java SE的一部分,因此这些类将不在JRE中。您需要找到并下载包含这些类的JAR文件,然后将其添加到Eclipse构建路径中。 (可以在此处下载JAR的一个地方,但是如果此链接中断,可以轻松进行自己的搜索。请转到Maven Central或findjar。)

  • 问题内容: 我有一个jimfs(内存文件系统中的Google)从字节数组中创建的zip文件。当尝试使用打开该文件时,出现错误,提示无法识别该提供程序。我的代码如下: URI类似于:。 堆栈跟踪为: jimfs未与一起列出。它位于分别与 for 相比的单独的类加载器中。 提供者的打印如下: 我尝试基于jimfs ClassLoaderTest示例手动设置类加载器,但没有成功。我在Linux上运行。

  • 问题内容: 有时,我会在页面上寻找可能存在或不存在的元素。我想用/尝试/捕获这种情况,当某些HTML元素不存在时,selenium会抛出该异常。原始例外: 具有讽刺意味的是,它不会让我捕捉到之前抛出的异常吗?代码在这里: 错误在这里: 谷歌搜索/文档整理一无所获…让我感到奇怪的是,selenium可以引发异常但不能捕获它。 问题答案: 您需要先导入异常 然后你可以参考它

  • 问题内容: 我的Java代码有问题。我正在尝试加密文件。但是,当我运行Java代码时,我得到“ java.security.InvalidKeyException:无效的AES密钥长度:162个字节”。 这是代码: 该错误发生在“ KeyPairGenerator keyGen = KeyPairGenerator.getInstance(“ AES”);“行。 问题答案: AES是一种对称算法,