在 Windows 上不会激活“ viralenv”

本质上,我似乎不能激活我创建的 Virtual alenv 环境。

我在 Windows PowerShell 里面做这个通过使用

scripts\activate

但我收到一条错误消息:

”无法加载,因为脚本的执行在此 系统」。

这会不会是因为我在电脑上没有管理员权限?

212014 次浏览

根据 Microsoft Tech Support ,这可能是执行策略设置的问题。要解决这个问题,您应该尝试在 PowerShell 窗口中执行 Set-ExecutionPolicy Unrestricted -Scope Process(如注释部分中@wtsiamruk 提到的)。这将允许在当前 PowerShell 会话中运行 viralenv。

还有另一种更不安全的方法,但由微软技术支持推荐。这种方法就是使用 Set-ExecutionPolicy Unrestricted -Force(它可以释放能量,把你的系统搞得一团糟)。但是,在使用这种不安全的方法之前,请确保使用 get-ExecutionPolicy检查当前的 ExectionPolicy 设置。然后,当您完成后,您可以使用 Set-ExecutionPolicy %the value the get-ExecutionPolicy command gave you% -Force恢复到这个 ExectionPolicy。

我在这里找到的另一个快速解决方案(只适用于 Windows PowerShell)是这样的:

第一次

Scripts\cmd

那就快跑

Scripts\activate.bat

在这个位置,你的 虚拟世界被激活。现在,如果您停用它,并希望稍后在 PowerShell 的同一会话中再次激活它,您只需要运行:

Scripts\activate

以后不需要使用 Cmd激活,蝙蝠命令。

设置 工序范围的执行策略。在 Yes [ y ]之后,键入脚本/激活:

Enter image description here

在 Windows 中,应该通过 cmd 中的以下命令激活虚拟环境

E: your _ Environment Scripts > activate.bat

如果是 环境被激活,那么它会显示您的环境名称,包括一个括号,如下所示:

(你的环境) E: 你的环境脚本 >

我们还可以通过使用 在哪儿检查确保它将按照层次结构的顺序列出我们的活动 Python 环境

 (your_environment) E:\your_environment\Scripts>where.exe python


E:\your_environment\Scripts\python.exe


C:\Python27\python.exe

如果你需要 解除,那么做:

(your _ environment) E: your _ environment Scripts > deactivate.bat

这对我很有效:

你可以简单地打开一个普通的(你不需要提高访问权限) cmd 或者 PowerShell 会话(我使用 Visual Studio Code 中嵌入的 PowerShell 终端) ,然后从脚本文件所在的文件夹中键入以下内容,例如: .venv\Scripts\Activate.ps1:

powershell.exe -executionpolicy unrestricted -command .\Activate.ps1 -Scope CurrentUser

然后运行 activate命令。

注意: 这只允许特定的脚本运行,并且只能由您的登录用户运行。

要在 Windows PowerShell 中安装一个 虚拟环境,但是要激活它,你需要以一个 管理员的形式运行 Windows PowerShell:

  1. pip install virtualenv
  2. virtualenv %Name of virtual environment%

现在已经安装来激活它

  1. 不受限制的集合执行策略
  2. .\env\Scripts\activate

让环境失效

  1. .\env\Scripts\deactivate

如需更多帮助,请访问官方网页: Https://pypi.org/project/virtualenv/1.8.2/

如果你不想像我一样改变你电脑在 Windows 上的执行策略,你可以使用命令提示符代替 Windows PowerShell,只需要运行

`Scripts\activate`

激活你的环境。

如果机器为64位,则以 管理员的形式打开 PowerShell 的 X86实例,并检查(设置)执行策略。

试试这个

Set-ExecutionPolicy Unrestricted

或者

Set-ExecutionPolicy Unrestricted -Force

在 PowerShell 中使用

Scripts\activate.ps1

取代了不再在 PowerShell 中工作的 激活,蝙蝠

还可以通过键入

deactivate

在命令提示符处。

严格按照以下步骤操作。

步骤1。使用 Windows PowerShell 作为管理员(非常重要)和 cd 到项目文件夹中。运行

virtual env

步骤2。如果您有 激活,蝙蝠文件,请在脚本文件夹中签入

\env\Scripts\activate.bat # It has to be there.

第三步。如果不是,在这里确保你有一个互联网连接,并运行这一次

virtual env

如果 激活,蝙蝠文件在脚本文件夹中,则继续。

第五步: 在 shell 中运行:

Set-ExecutionPolicy Unrestricted -Force

要在 Windows 上激活 viralenv,激活脚本位于 Scripts 文件夹中:

env\Scripts\activate.bat

步骤7。检查每行开始处的(env)。这表明您在虚拟环境中。

步骤8。要在第二次返回项目时重新激活,请运行:

.\\env\Scripts\activate

对我来说,Windows 1064位:

  • 以管理员身份打开 cmd
  • powershell
  • 类型 Set-ExecutionPolicy Unrestricted -Force

好了,重新打开 VisualStudio 代码并启动 pythoninnng。

在 Windows 上,以管理员身份打开 Windows PowerShell

Enter image description here

Set-ExecutionPolicy Unrestricted -Force

创建一个虚拟环境:

pip install virtualenv
virtualenv foo
cd .\foo
.\Scripts\activate

Enter image description here

基于这里找到的答案,我创建了一个简短的教程与截图。

  • Python 3.7
  • Windows 1064位
  • PowerShell

我希望它能有所帮助: 如何在 Windows 10上设置 Python 3虚拟环境

删除创建的 venv 目录,并使用以下命令创建一个新目录:

python -m venv myvenv

然后看看激活命令是否有效。

C:\path> Set-ExecutionPolicy - Scope CurrentUser

命令管道位置1处的 cmdlet Set-ExectionPolicy 下列参数的供应值: 执行策略: 无限制

C:\path> Scripts\activate.ps1

(新环境)

C:\path> deactivate


C:\path>

这是 成功了

在 Windows PowerShell 中,Executive/Policy 默认设置为“受限制”。 这不允许在 PowerShell 中运行脚本。

只有当 ExectionPolicy 从“限制”设置为“ RemoteSense”时,我们才能运行脚本 你可以按照视频 PowerShell 08-更改执行策略以便运行脚本 做到这一点!

在上面的步骤之后,您可以直接输入“ Scrits/active”(在您想要激活的虚拟环境的目录中)来激活您想要激活的虚拟环境!

例子

如果在创建虚拟环境时使用了 pipenv,则应在执行 VisualStudio 代码终端中的任何命令之前运行 pipenv shell

以管理员身份打开另一个 PowerShell 窗口,然后键入:

set-executionpolicy remotesigned

然后按 Y然后按 Enter

现在关闭这个 PowerShell 窗口,回到之前使用的 shell。

下面的步骤是工作-

  1. 将 python 路径设置为 c: Program Files Python310 Scripts in 环境变量
  2. 在管理模式下打开 PowerShell,并执行以下命令-
    不受限制的集合执行策略
  3. 关闭 PowerShell 并在管理模式下重新开始
  4. 执行以下命令-
    启动 venv 脚本

我遇到了同样的问题,问题是

可能的原因是,在 Powercell 上,没有“作为管理员运行”,venv就无法运行 您可以在命令提示符下运行 venv\Scripts\activate,而不是 Powercell

搜寻 PowerShell 右键单击 Windows PowerShell,然后以管理员身份运行。

按下面的命令,然后按回车键。

Set-ExecutionPolicy Unrestricted -Force

重新启动系统并尝试激活 python 虚拟环境。

如果您的虚拟环境创建成功,那么它应该可以工作。

创建一个. bat 脚本:

call .\env\Scripts\deactivate
RMDIR /Q/S env


call python -m pip uninstall pip -y
call python -m ensurepip
call python -m pip install --upgrade pip
call python -m pip install --user virtualenv
call python -m virtualenv env


call .\env\Scripts\activate


# Install pip requirements
call python -m pip install --upgrade pip
call python -m pip install Pillow


# Run main scripts here
call python main.py


call .\env\Scripts\deactivate

通过命令提示符运行此脚本。