问题描述
在下载了专业版的pycharm后,在pycharm终端运行项目的时候,无论什么包,只要你下载,就是显示已经存在(当然存在了,我虚拟环境之前都下的有)
REquirement already statisfied:XXX
但是你一运行它就显示没有这个包
loduleNotFoundError: No module named XXXXX
真是米奇妙妙屋 后来搜了半年没解决 发现还有一个问题,就是在我打开pycharm终端的时候会有一行红字
。∶无法加线文件C:\(Users\8b155]Documents\[WindowsPowerShell pofile.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.micosoft.com/fwlink/?LinkID=135170中的about_Execution_Policies.
: SecurityError :(:)[],PSsecurityException
+FullyQualifiedErrorId : UnauthorizedAccess
然后去他说的官网看了看发现没看懂,啥也看不懂,叭叭叭
后来看到一个
问题原因
PowerShell 或者 windows 终端启动时,为了确保安全,文件的执行策略默认设置为 Restricted 。 Restricted 执行策略不允许任何脚本运行。
有关文件的执行策略可参考:
Restricted 执行策略允许单独的命令,但不允许任何脚本运行,将阻止运行所有脚本文件,包括格式设置和配置文件 (.ps1xml) 、模块脚本文件 (.psm1) 和 PowerShell 配置文件 (.ps1) 。
而 AllSigned 和 RemoteSigned 执行策略可防止 Windows PowerShell 运行没有数字签名的脚本。
AllSigned 要求所有脚本和配置文件都由受信任的发布者签名,包括在本地计算机上编写的脚本。
Bypass 没有任何内容被阻止,也没有警告或提示。
Default 默认执行策略。Windows客户端受限或Windows服务器远程登录。
RemoteSigned 要求从Internet下载的所有脚本和配置文件都由受信任的发布者签名。Windows server计算机的默认执行策略。
Restricted 不加载配置文件或运行脚本。Windows客户端计算机的默认执行策略。
Undefined 没有为作用域设置执行策略。从未由组策略设置的范围中删除分配的执行策略。如果所有作用域中的执行策略都未定义,则有效的执行策略将受到限制。
Unrestricted 从PowerShell 6.0开始,这是非Windows计算机的默认执行策略,无法更改。加载所有配置文件并运行所有脚本。如果您运行的是从internet下载的未签名脚本,则在运行之前系统会提示您输入权限。
解决方法
因此只需要降低安全性等级,将执行策略改为 RemoteSigned 即可执行脚本,在窗口中使用 Set-ExecutionPolicy 命令即可。
关于 Set-ExecutionPolicy 命令可参考:
具体方法
以管理员身份打开 PowerShell 或者 windows 终端,执行命令 set-executionpolicy remotesigned 并确认。
set-executionpolicy remotesigned
然后再次运行该脚本文件即可通过。
恢复默认设置
通过修改将降低系统的安全性,可能带来被病毒或恶意软件攻击的风险。
因此,在执行完自己编写的脚本文件后,可以将设置改回默认,执行以下命令即可 set-executionpolicy Restricted
set-executionpolicy Restricted
其他
如果需要了解计算机上的现用执行策略,可以打开PowerShell 然后输入 get-executionpolicy
get-executionpolicy
更多关于执行策略的设置,可以参阅Set-ExecutionPolicy (Microsoft.PowerShell.Security) - PowerShell | Microsoft Learn
解决步骤
powershell激活conda失败;无法加载文件 C:\Users\user\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本_Qice的博客-CSDN博客_conda.psm1