如何在 Visual Studio Code 中为 Python 设置虚拟环境?
- 2025-01-09 08:46:00
- admin 原创
- 25
问题描述:
在我的项目文件夹中,我创建了一个venv文件夹:
python -m venv venv
当我在 Visual Studio Code 中运行命令时,没有显示我的 venv 文件夹。我按照这里的select python interpreter
建议上移了一级,但 Visual Studio Code 看不到我的虚拟解释器。
我错过了什么?
解决方案 1:
我已经使用 Visual Studio Code 一段时间了,发现了另一种在 Visual Studio Code 中显示虚拟环境的方法。
venv
通过命令提示符转到所在的父文件夹。输入
code .
和Enter
。[对我来说,它在 Windows 和 Linux 上都可以运行。]这也应该显示该文件夹中存在的虚拟环境。
原始答案
每次使用 venv 在 Visual Studio Code 上工作时,我几乎都会遇到同样的问题。我遵循以下步骤:
转到菜单文件→首选项→设置。
单击“工作区设置”。
在Files:Association下的JSON: Schemas部分中,你将找到Edit in settings.json。点击它。
在工作区设置下更新
"python.defaultInterpreterPath": "Your_venv_path/bin/python"
。(对于 Windows):"python.defaultInterpreterPath": "Your_venv_pathScriptspython.exe"
在工作区设置下更新。如果仍然没有显示你的venv,请重新启动 Visual Studio Code 。
注意:对于旧版本,请使用python.pythonPath
而不是。python.defaultInterpreterPath
解决方案 2:
使用较新版本的 Visual Studio Code,这非常简单。
在项目文件夹中打开 Visual Studio Code。
然后打开Python 终端(Ctrl
++ :Python:创建终端Shift
)P
在终端中:
python -m venv venv
然后您将看到以下对话框:
单击Yes
;您的 venv 即可开始使用。
Ctrl
在 VSCode ++中打开一个新终端Shift
,P
你会看到 venv 已被拾取;例如:(venv) ...
您现在可以照常安装软件包,例如,pip install sklearn
跟踪已安装的内容:pip freeze > requirements.txt
对于旧版本的 VSCode,您可能还需要执行以下操作:
然后Python: Select Interpreter
(通过Ctrl
++ )Shift
`P`
并选择选项(在我的情况下是底部)
Python 3.7 (venv)
./venv/Scripts/python.exe
如果你看到
Activate.ps1 未经数字签名。您无法在当前系统上运行此脚本。
您需要执行以下操作: https ://stackoverflow.com/a/18713789/2705777
有关详细信息,请参阅:全局、虚拟和 conda 环境
安装模块
Ctrl
++和终端:创建新的集成Shift
终端P
从终端
视窗:..venvScriptsactivate
Linux:./.venv/bin/activate
您现在可以照常安装软件包,例如pip install sklearn
。
对于Jupyter,你需要做更多 - Visual Studio Code 中的 Jupyter 笔记本不使用活动虚拟环境
解决方案 3:
如果你已经有了virtualenvs
,你只需要打开 VSCode 偏好设置(Ctrl + ,)
并搜索venv
。然后将 的路径添加 virtualenvs
到“Venv Path”
设置中,如下所示:
更多信息可以在这里找到:
https: //techinscribed.com/python-virtual-environment-in-vscode/
解决方案 4:
创建虚拟环境的步骤:
转到包含项目的文件夹
python3 -m venv evn_name
source evn_name/bin/activate
现在你将能够在每个终端行前面看到 (env_name)
现在您可以在虚拟环境中安装所需的库
pip3 install -r requirement.txt
如果需要重新启动代码编辑器
要停止在虚拟环境中工作,请输入:deactivate
删除虚拟环境类型:rm -rf evn_name
解决方案 5:
我在不更改 Python 路径的情况下修复了该问题,因为这对我来说似乎不是正确的解决方案。以下解决方案对我有用:
在 Windows 中打开 cmd / 在 Linux/Mac 中打开 shell。
激活你的虚拟环境(如果使用 PowerShell,则使用源 activate / activate.bat / activate.ps1)
C:Users<myUserName>VideosmyFolder>django-projectScriptsactivate.bat (django-project) C:Users<myUserName>VideosmyFolder>
导航到您的项目目录并在那里打开 Visual Studio Code。
(django-project) C:UsersprashVideosmyFolderprojects>code .
在 Visual Studio Code 中,转到菜单文件→首选项→设置(不用担心,您不需要打开 JSON 文件)
在设置搜索栏中,搜索 virtual / venv 并点击
Enter
。你应该在搜索栏中找到以下内容:
Python:Venv 文件夹主目录中用于查看虚拟环境的文件夹(默认支持 pyenv、direnv 和 virtualenvwrapper)。
添加一项,然后输入你的 virtuanenv 的激活文件所在的脚本的路径,比如我的系统是:
C:Users<myUserName>VideosmyFolderdjango-projectScripts
保存并重新启动 Visual Studio Code。
要重新启动,请再次打开 cmd,导航到您的项目路径并打开 Visual Studio Code。(请注意,在从 cmd 打开 Visual Studio Code 之前,应该在 cmd 中激活您的 venv)
从 cmd 打开 Visual Studio Code 的命令:
code .
解决方案 6:
我遇到了同样的问题,直到我发现我试图使我的项目目录和虚拟环境相同 - 这是不正确的。
我有一个CodePython
目录,用于存储我的所有 Python 项目。我的 Python 3 安装在 Path 上。
如果我想创建一个具有自己的虚拟环境的新 Python 项目 (Project1),那么我会这样做:
python -m venv CodePythonProject1env
然后,只需在 Visual Studio Code 中打开文件夹(Project1)即可确保使用正确的虚拟环境。
解决方案 7:
对于 Anaconda 用户:只需使用Conda创建一个 venv ,参见此处。之后,打开 Visual Studio Code 并左键单击 Visual Studio Code 左下角显示的 Visual Studio Code 解释器:
选择在设置窗口下拉菜单中弹出的虚拟环境,就完成了。
解决方案 8:
许多人都提到过这种python.pythonPath
方法。
另一种方法是添加envFile
这样launch.json
的:
{
"name": "Run",
"etc": "etc",
"envFile": "${workspaceFolder}/venv"
}
解决方案 9:
这是对 Sumit S Chawla 的答案的补充,尽管它是正确的,但缺少这样一个事实:每当您在 Visual Studio Code 中打开一个文件夹时,它都会创建一个.vscode文件夹,但这些文件夹可以是多个,在您最终打开目录时创建。
.vscode文件夹具有 JSON 对象,其内容属性包括“setting.json”,其中声明在“.vscode”级别使用的解释器(有关更多说明,请参阅Visual Studio Code 中的“工作区”是什么? )。
{
{
"python.pythonPath": "VirtualEnPath/bin/python3.6"
}
}
因此,您可以在虚拟环境中的另一个级别打开 Visual Studio Code。它会创建另一个.vscode文件夹,该文件夹将全局计算机的目录假定为 Python 目录,因此会出现这样的错误,而我所经历的与虚拟环境是否激活无关。
这确实是发生在我身上的事情。我确实有一个 DjangoRESTAPI_GEN 文件夹,我最初在其中打开 IDE,它确实识别了虚拟环境 Python 路径。然后几天后,我在 Git 所在的级别打开它,它确实创建了另一个.vscode文件夹,该文件夹选择了全局 Python 解释器,导致我在虚拟环境中的 lint 无法使用。
虚拟环境解释器甚至没有显示在“选择 Python 解释器”中。但正如所写,在.vscode文件夹所在的级别打开 IDE,其中包含具有正确路径的settings.json文件,它确实会显示出来。
一旦您在setting.json文件中设置了正确的路径并选择虚拟环境解释器,Visual Studio Code 将在其终端中自动激活虚拟环境:
解决方案 10:
有一个名为“Python Auto Venv”的 Visual Studio Code 扩展,它会自动检测并使用您的虚拟环境(如果有)。
解决方案 11:
你必须选择虚拟环境中的 python
创建新的 venv (virtualenv -p python3 venv)
在 Vs Code 中打开目录(使用 venv)
CMD + Shift + P:Python:从 venv 中选择解释器
github
解决方案 12:
创建虚拟环境:
python3 -m venv my_env_name
激活虚拟环境
source bin/activate
类型:python -c "import sys; print(sys.executable)"
你将得到类似的内容:
对于linux:/home/user/dev/env/frame/bin/python
复制此内容。
打开 VS Code
按
Ctrl+Shift+P
搜索
Python Select Interpreter
粘贴文件目录
打开一个新的终端,您将看到您的虚拟环境。
解决方案 13:
使用 Visual Studio Code,可以配置其中的任务task.json
以使用中列出的 Python 模块构建 Python 环境requirements.txt
,并pip
在该虚拟环境中升级。要创建任务,请转到终端 -> 配置任务。如果task.json
您的环境中没有现有文件,请从模板创建task.json
文件 -> 然后单击其他并复制并粘贴以下 json。此文件将位于.vscode/
您环境中的文件夹中:.vscode/task.json
。此任务与 Windows、Linux 和 MacOS 等操作系统无关。在 Windows 的命令行应用程序生态系统中,cmd.exe
与标志 /c
和一起使用以确保任务创建的环境正确。正如 Neil 在他的帖子/d
中提到的,您可以
在对话框提示后选择,也可以通过命令面板选择 Python 解释器。Yes
{
"version": "2.0.0",
"tasks": [
{
"label": "Build Python Env",
"type": "shell",
"group": {
"kind": "build",
"isDefault": true
},
"options": {
"cwd": "${workspaceFolder}"
},
"linux": {
"command": "python3 -m venv py_venv && source py_venv/bin/activate && python3 -m pip install --upgrade pip && python3 -m pip install -r requirements.txt && deactivate py_venv"
},
"osx": {
"command": "python3 -m venv py_venv && source py_venv/bin/activate && python3 -m pip install --upgrade pip && python3 -m pip install -r requirements.txt && deactivate py_venv"
},
"windows": {
"options": {
"shell": {
"executable": "C:\\Windows\\system32\\cmd.exe",
"args": [
"/d",
"/c"
]
},
},
"command": "(if not exist py_venv py -m venv py_venv) && .\\py_venv\\Scripts\\activate.bat && py -m pip install --upgrade pip && py -m pip install -r requirements.txt && deactivate py_venv"
},
"problemMatcher": []
}
]
}
标记为Build Python Env的任务演示了如何安装 Python 环境,其中 numpy 和 pandas 作为依赖项,如requirements.txt
下面的示例中所示:
如果添加了更多 Python 包requirements.txt
,则重新运行该任务会将新的附加依赖项安装到 Python 虚拟环境中
解决方案 14:
我遇到了同样的问题并且解决方案非常简单:
“如果在 VS Code 运行时创建新的 conda 环境,请使用“重新加载窗口”命令刷新 Python 显示的环境列表:选择解释器;否则您可能看不到那里的环境。它可能需要一小段时间才能出现;如果您一开始没有看到它,请等待 15 秒,然后再次尝试使用该命令。”
这是在Visual Studio Code 网站上写的。
注意:要重新加载窗口:在 Visual Studio Code 中Ctrl
++ ,Shift
然后P
写入 reload window
解决方案 15:
如果您在 Mac 上使用 Visual Studio Code,则必须将 venv 安装在与工作区相同的目录中。
就我而言,我的 venv 位于不同的目录中(不在我的项目工作区中),因此只需将我的 venv 剪切/复制粘贴到项目工作区即可。
一旦您的 venv 被复制到项目工作区,您的 Visual Studio Code 就会获取它并显示一条通知,让您可以选择 venv 作为解释器。
解决方案 16:
假设您已经创建了一个名为 venv 的 virtualenv 文件夹。
您可以通过在安装 venv 的目录中键入以下命令轻松激活它。
.envScriptsactivate
解决方案 17:
对于 Mac 用户,请注意这个错误:当你点击“输入解释器路径”时,你有两个选择:(1)手动输入路径;(2)从 Finder 中选择 venv 文件。
它仅在我手动输入路径时才有效。使用 Finder 选择会产生一些Library/Developer/CommandTools/...
我理解的奇怪路径。
解决方案 18:
对于新版本的 vscode,有一个非常简单的程序
打开命令面板 (ctrl+shift+p)
选择“+输入解释器路径”
选择“查找...”,它将打开文件资源管理器
转到环境文件夹的脚本文件夹(例如:C:\Users\name\env\Scripts)
选择 python.exe 文件
重新启动 VScode,如果你看到可用的内核,你可以在那里找到你的 pyhton 环境
解决方案 19:
要激活您的虚拟环境,步骤 1:打开 VSCode 步骤 2:按下 ctrl + shift + p 步骤 3:输入 python:选择解释器,如果在同一个文件夹中,您应该能够看到虚拟环境。
解决方案 20:
您可以按照以下步骤在 Visual Studio Code (VSCode) 中轻松创建 Python 虚拟环境:
在 VSCode 中打开终端。您可以通过导航到菜单并选择“查看”->“命令面板”来执行此操作,或者使用键盘快捷键 Ctrl+Shift+p。
在命令面板中,输入 Python:创建环境。
在 conda 或 venv 之间进行选择。在此示例中,我们将使用 venv。
从您的计算机上安装的 Python 版本列表中选择所需的 Python 版本。
如果您有要用于安装软件包的 requirements.txt 文件,可以在此处指定。虚拟环境将根据此文件中列出的软件包创建。如果没有,您可以将此选项留空。
单击“确定”即可创建您的虚拟环境。
现在将创建您的 Python 虚拟环境,它将位于项目文件夹内名为 .venv 的目录中。
通过这种方法,您可以轻松在 VSCode 中管理您的 Python 环境,并选择适合您的项目要求的 Python 版本和包依赖项。
解决方案 21:
激活您的环境。
你也可以尝试这个:
在 Visual Studio Code 中使用 Python 环境
解决方案 22:
我遇到了同样的问题,这是因为 PowerShell 没有更新。有时 Windows 会保留版本 2.*,我不得不手动下载并安装版本 3。
之后问题解决了,我可以很好地使用虚拟环境。
解决方案 23:
在 Visual Studio Code 中,选择一个文件夹,创建一个工作区,它就可以正常工作。
解决方案 24:
我发现有两个主要原因可能导致无法看到 venv。
如果您使用的是 VS Code 版本 1.60.0 或更接近的版本,则 venv 的路径由 给出
python.defaultInterpreterPath
。python.pythonPath
不再有效。
因此,settings.json 应该是这样的:
{
"python.defaultInterpreterPath":
"C:\\tproj\\tproj_env\\Scripts\\python"
}
venv 文件夹应位于比 所在文件
settings.json
夹更高的级别文件夹中。例如:如果项目名称为 tproj,并且 venv 文件夹(例如 tproj_env)和 codes 文件夹(例如 tproj_code)是子文件夹。建议将 放在settings.json
tproj_code 子文件夹中。
解决方案 25:
VS Code python 扩展会自动检查默认虚拟环境目录中的虚拟环境:https ://code.visualstudio.com/docs/python/environments#_where-the-extension-looks-for-environments
如果您的虚拟环境存在于任何这些默认目录中,您只需选择它即可激活该环境。要选择特定环境,请使用命令面板中的“Python:选择解释器”命令(Ctrl+Shift+P)。参考:https ://code.visualstudio.com/docs/python/environments#_select-and-activate-an-environment
解决方案 26:
以管理员权限启动 PowerShell,运行以下命令:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Remotesigned
确认并开始!执行策略更改已更新。您可以返回 VsCode 并激活您的虚拟环境。
解决方案 27:
通过在 Visual Studio Code 中设置所有内容,您的虚拟环境将不会具有您想要的配置。
首先使用 GitBash 并输入以下命令来创建虚拟环境。这假设您位于安装 Python 的正确文件夹中。
python3 -m venv --system-site-packages /c/python/python39/python39_venv
cd /c/python/python39/python39_venv
source /c/python/python39/python39_venv/source/bin/activate
pip install {module of choice}=={version of choice}
如果您在不同的文件夹中,请输入 python.exe 的完整路径,而不是命令 python3。
/c/Python/Python39/Scripts/python.exe -m venv --system-site-packages /c/python/python39/python39_venv
现在在 Visual Studio Code 中配置这个新的虚拟环境:
View > Command Palette > type: "Python: Select Interpreter" > type "C:/Python/Python39/python39_venv/Scripts/python.exe"
根据 Python 的版本,python.exe 的子文件夹可能会有所不同。因此请手动导航到路径以确认路径。
解决方案 28:
激活您的虚拟环境:
打开命令提示符(Windows)或终端(MacOS)。
激活虚拟环境:
将 venv 替换为您的虚拟环境名称
假设你使用 Anaconda 或 Miniconda 作为包管理器
conda activate venv
在 Visual Studio (VS) Code 中打开项目文件夹:
启动 VS Code。
点击菜单栏中的“文件”。
选择“打开文件夹”或“打开工作区”(如果您有工作区文件)。
导航到包含项目文件的文件夹并单击“打开”。
在 VS Code 中配置 Python 解释器:
在 VS Code 中打开项目后,按 Ctrl+Shift+P(Windows)或 Cmd+Shift+P(MacOS)打开命令面板。
输入“Python:选择解释器”并从选项中选择它。
将显示可用的 Python 解释器列表。选择与您的虚拟环境关联的解释器(它可能标有环境名称和路径)。
如果您的虚拟环境未列出,请选择“输入解释器路径...”并提供虚拟环境中的 Python 可执行文件的路径。
解决方案 29:
对我来说,我认为问题在于我的虚拟环境名称前面没有.
,并且 Visual Studio Code 没有将其识别为虚拟环境。(在 MAC 上运行)。
在终端上创建一个,例如:
python3.12 -m venv .hello
并打开包含的文件夹.hello
,按下+ +并选择时,Visual Studio Code 会建议.hello
作为解释器。Cmd
`ShiftP
Python: Select Interpreter`
要查看它是否有效,您可以按运行按钮并在 VSCode 上打开终端。显示的路径应类似于:
/Users/youruser/Desktop/FolderWithVenv/.hello/bin/python
解决方案 30:
如果您有多个版本的 python,则需要明确指定 python3 并使用 virtualenv 而不是 venv:
python3 -m virtualenv venvname
如果您在 FS 挂载目录中运行,您可能需要指定 --copies,因为符号链接可能不起作用。
python3 -m virtualenv --copies venvname
- 2024年20款好用的项目管理软件推荐,项目管理提效的20个工具和技巧
- 2024年开源项目管理软件有哪些?推荐5款好用的项目管理工具
- 2024年常用的项目管理软件有哪些?推荐这10款国内外好用的项目管理工具
- 项目管理软件有哪些?推荐7款超好用的项目管理工具
- 项目管理软件有哪些最好用?推荐6款好用的项目管理工具
- 项目管理软件哪个最好用?盘点推荐5款好用的项目管理工具
- 项目管理软件有哪些,盘点推荐国内外超好用的7款项目管理工具
- 项目管理软件排行榜:2024年项目经理必备5款开源项目管理软件汇总
- 2024项目管理软件排行榜(10类常用的项目管理工具全推荐)
- 项目管理必备:盘点2024年13款好用的项目管理软件