系统禁用运行脚本时如何激活Vscode中的虚拟环境?

问题描述 投票:0回答:4

我在 vscode 中名为 server 的文件夹中创建了一个虚拟环境,输入:

python -m venv env 

我打开服务器文件夹,选择解释器Python 3.8.1 64-bit('env':venv)

然后我得到以下错误:

我找不到任何解决方案,我被困了几个小时。

python visual-studio-code virtual-environment
4个回答
17
投票

看起来是要通过powershell脚本来激活环境。默认情况下,运行此类脚本是关闭的。另外,通常通过cmd和.bat脚本激活虚拟环境。您可以打开运行 powershell 脚本或通过 cmd 和

.bat
文件让 VS Code 激活环境。

第一种方法 - 使用cmd而不是Powershell

我刚刚在我的 PC 上检查过,VS Code 根本不使用 Powershell。它使用 cmd 而不是 Powershell 激活环境。也许值得检查 VS Code 设置,将 cmd 设置为默认终端。主settings.json中可能有这样的选项(您可以通过

ctrl+shift+p
打开它并输入“打开设置(JSON)”):
"terminal.integrated.shell.windows": "C:\\Windows\\System32\\cmd.exe",
.

第二种方式——改变Powershell执行策略

为了更改 Powershell 执行策略,您可以将

"terminal.integrated.shellArgs.windows": ["-ExecutionPolicy", "Bypass"]
添加到主 VS Code 设置中。 您也可以以管理员身份打开 Powershell 窗口并输入以下内容:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

然后回答

y
任何问题。


3
投票

关于在 VS Code 中使用命令提示符而不是 Powershell 的更新

"terminal.integrated.shell.windows": "C:\\Windows\\System32\\cmd.exe"
中实施
settings.json
时,会给出通知:

这是 已弃用,配置默认 shell 的新推荐方法是在

#terminal.integrated.profiles.windows#
中创建终端配置文件,并在
#terminal.integrated.defaultProfile.windows#
中将其配置文件名称设置为默认值。目前,这将优先于新的配置文件设置,但将来会发生变化

查看文档后我发现正确的替代方案是包含一行,如下所示。

"terminal.integrated.defaultProfile.windows": "Command Prompt"

或者,您也可以使用 GUI,如文档中所示。那里还显示了更多高级设置。


0
投票

尝试在 vscode 中使用 Cmd 并运行此命令 env(你的虚拟环境名称)\Scripts ctivate


0
投票

python环境已创建

cmd:python -m venv2 env

python evniromnet 激活

powershell:env/Scripts/Activate.ps1

© www.soinside.com 2019 - 2024. All rights reserved.