今天,当我试图在Sublime Text 3上运行简单的代码时,出现了以下消息:
未找到Python,但可以从Microsoft Store: https://go.microsoft.com/fwlink?linkID=2082640安装
当我在CMD中输入Python时,它会打开Windows商店,让我下载Python 3.7。这个问题今天就开始了,没有什么好理由。我没有更改或下载任何关于Python的内容,并且已经尝试重新安装Python,并且Path环境变量是正确的。
今天,当我试图在Sublime Text 3上运行简单的代码时,出现了以下消息:
未找到Python,但可以从Microsoft Store: https://go.microsoft.com/fwlink?linkID=2082640安装
当我在CMD中输入Python时,它会打开Windows商店,让我下载Python 3.7。这个问题今天就开始了,没有什么好理由。我没有更改或下载任何关于Python的内容,并且已经尝试重新安装Python,并且Path环境变量是正确的。
当前回答
我在这方面也遇到了问题,Windows在双击或cmd(命令提示符)时无法识别Python或Anaconda。
问题:无法在Windows中的“python”cmd中导入库。相反,Windows的“python”cmd将用户带到他们不想去的地方。 问题原因:在Windows“环境变量”中,Windows在“%USERPROFILE%\AppData\Local\Microsoft\WindowsApps”目录中添加了python.exe和python3.exe(我不知道这些链接到哪里)。
解决方案:我尝试删除WindowsApp目录中的python*.exe文件,但Windows不允许,所以我打开了“%USERPROFILE%\AppData\Local\Microsoft\WindowsApps”目录中的命令提示符,并键入:
del python.exe
del python3.exe
然后我创建了一个环境变量,链接到已安装的Python解释器链接。在我的例子中,它是C:\Anaconda3;C:\Anaconda3\脚本,以及其他一些良好的措施。
其他回答
这是一个实现神奇功能的PowerShell脚本。
Remove-Item $env:USERPROFILE\AppData\Local\Microsoft\WindowsApps\python*.exe
作为一个在Sublime Text中进行Python开发的人,我知道你说过Python解释器的路径是正确的,但是当你安装Python解释器时,一定要勾选将Python添加到path的选项。
我以前也有同样的问题直到我做了这个。
我把一个powershell片段放在一起,它重新排序了WindowsApps和Python文件夹,所以Python是第一个。以管理员身份运行:
$appsFld="$env:USERPROFILE\AppData\Local\Microsoft\WindowsApps";
$pyPath=(Resolve-Path "$env:USERPROFILE\AppData\Local\Programs\Python\Python*\")
$Env:Path = (($Env:Path.Split(';') | Where-Object { $_ -ne "$appsFld" }) -join ';');
$Env:Path = (($Env:Path.Split(';') | Where-Object { $_ -ne "$pyPath" }) -join ';');
$Env:Path += ";$pyPath";
$Env:Path +=";$appsFld";
[Environment]::SetEnvironmentVariable("PATH", "$Env:Path", "Machine")
然后我可以很好地运行python:
> python
Python 3.10.7 (tags/v3.10.7:6cc6b13, Sep 5 2022, 14:08:36) [MSC v.1933 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> quit
对于任何使用pyenv-win的人来说,这是一个额外的注意事项:在关闭应用程序执行别名之后,运行pyenv rehash。您可能还需要关闭/重新打开CMD或PowerShell窗口。
使用Windows搜索栏找到“管理应用程序执行别名”。Python应该有两个别名。取消选择它们,这将允许使用常见的Python别名“Python”和“python3”。请看下图。
我认为我们在安装Python时遇到了这个问题,因为在新的Windows安装中,别名处于ON位置,如下图所示。打开后,Windows会在%USERPROFILE%\AppData\Local\Microsoft\WindowsApps目录下放置一个名为python.exe和python3.exe的空文件或假文件。这是别名。
然后,Microsoft将该目录放在“Path”环境变量列表的顶部。
当你在cmd中输入“python”时,它会从上到下搜索“Path”环境变量页面中列出的目录。因此,如果你在新的Windows 10安装后安装了Python,然后被重定向到Windows商店,这是因为有两个Python. exe:应用程序执行别名页面中的别名,以及你安装Python的地方的真实别名。但是cmd首先会找到应用程序的执行,别名python.exe,因为该目录位于路径的顶部。
我认为最简单的解决方案是将python.exe和python3.exe检查为OFF,就像我之前建议的那样,这会删除假的EXE文件文件。根据微软的开发博客,他们表示他们创建这个系统的部分目的是为了新的Python用户,特别是在学校学习Python的孩子,他们在安装它时遇到了麻烦。
创建这个别名是为了帮助刚开始学习Python的孩子安装它,并专注于学习编码。我认为如果你从Windows应用商店安装Python, Windows可能会删除这些别名。我们注意到,如果从其他来源手动安装,它们不会被删除。
(另外,空的/fake python.exe并不是真的空的。它在截图中显示为0 KB,但在cmd中输入“start ms-windows-store:”会打开Windows应用商店,所以它可能只有一行,并有一种将其引导到Python页面的方法。)
最后,正如Chipjust所建议的,你可以使用本文中解释的DOSKEY之类的东西为Python创建一个新别名,例如: 如何设置Windows下命令提示符的别名