无法在Windows 10上运行Python 3.7,“权限被拒绝”

5
尝试在Windows 10上使用Git Bash运行Python 3.7时,我遇到了以下错误:
$ python --version
bash: /c/Users/Name/AppData/Local/Microsoft/WindowsApps/python: Permission denied

怎么办?

编辑:我通过使用 Scoop 安装 Python 并使用 Cmder 替代 Git Bash 来解决(或者说绕过了)这个问题。


4
为什么这个问题被关闭了?“我们不允许在 Stack Overflow 上提问与通用计算硬件和软件有关的问题。”这个问题是关于在 Windows 上使用 Python 的一个非常具体的问题,它与 StackOverflow 百分之百相关。 - Markus Meskanen
1
是的。它帮助了我。 - Mote Zart
2个回答

9

Python并没有真正安装。这只是一个"shim",它应该打开Windows商店,但它只能从PowerShell或CMD(而且只有有时才能正确地执行)。我建议访问Python网站并从那里下载和安装。

这里有一篇博客文章介绍了这个“功能”:https://devblogs.microsoft.com/python/python-in-the-windows-10-may-2019-update/

这篇SuperUser文章讨论了解决方案:https://superuser.com/questions/1437590/typing-python-on-windows-10-version-1903-command-prompt-opens-microsoft-stor


1
我已经安装了Python,并从官网下载。我可以在PyCharm中使用它。 - General Gravicius
确保你在 Git Bash 中将它添加到 $PATH - Sumner Evans
我也这样做了。 $ export path="$PATH:/c:/Users/Name/AppData/Local/Programs/Python/Python37" - General Gravicius
安装后,"%LocalAppData%\Microsoft\WindowsApps\python.exe" 是一种特殊的 appexec 重解析点,由 CreateProcessW 使用以设置允许执行位于 "%ProgramFiles%\WindowsApps" 子目录中的真实可执行文件的安全上下文。按设计,这个重解析点不受 I/O 管理器或内核中的任何过滤驱动程序处理,因此那些天真地尝试启用重解析并打开该路径的代码(默认情况下)将失败。bash,更具体地说是 Cygwin/MSYS2,正是这样做的,因此需要修补才能支持 appexec 链接。 - Eryk Sun
你需要执行 export PATH="/c/Users/Name/.../Python/Python37:$PATH"。注意 $PATH 在新添加的路径后面。这是因为 Linux 会按顺序查找 $PATH 中的每个目录,如果所需的可执行文件存在于该目录中,则使用该文件。此外,请注意在 Linux 的 $PATHc 后面不要加上 :,因为 : 是路径元素的分隔符。 - Sumner Evans
1
你的意思是bash,而不是Linux。git-bash基于MSYS2,它源自Cygwin。 - Eryk Sun

0

我在Git Bash中也收到了“Permission Denied”消息。对我有用的是使用“py”:

py file_name.py

参考资料:Py和Python之间的区别


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接