问题描述
当我使用 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
在您创建虚拟环境的同一目录路径中。