【问题标题】:Unable to run Python 3.7 on Windows 10 "Permission denied"无法在 Windows 10“权限被拒绝”上运行 Python 3.7
【发布时间】:2019-12-03 00:33:50
【问题描述】:

当尝试使用 Git Bash 在 Windows 10 上运行 Python 3.7 时,我收到以下错误:

$ python --version
bash: /c/Users/Name/AppData/Local/Microsoft/WindowsApps/python: Permission denied

怎么办?

编辑:我通过使用 scoop 安装 python 并使用 cmder 而不是 Git Bash 解决了(或者更确切地说是规避了)这个问题。

【问题讨论】:

  • 为什么这个问题被关闭了? “我们不允许对 Stack Overflow 上的一般计算硬件和软件提出问题” 这个问题是关于在 Windows 上使用 Python 的一个非常具体的问题,它与 StackOverflow 100% 相关。
  • 是的。它帮助了我。

标签: python windows bash git


【解决方案1】:

实际上并未安装 Python。这是一个应该打开 Windows 应用商店的 shim,但它只能在 PowerShell 或 CMD 中运行(并且有时只能正确运行)。我建议访问 Python 网站并从那里下载和安装。

这是宣布此“功能”的博客文章:https://devblogs.microsoft.com/python/python-in-the-windows-10-may-2019-update/

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

【讨论】:

  • 我已经安装了,而且来自 Python 网站。我可以将它与 PyCharm 一起使用。
  • 确保在 Git Bash 中将其添加到 $PATH
  • 我也这样做了。 $ export path="$PATH:/c:/Users/Name/AppData/Local/Programs/Python/Python37"
  • 安装后 "%LocalAppData%\Microsoft\WindowsApps\python.exe" 是一种特殊的 appexec 重解析点,CreateProcessW 使用它来设置允许执行真正的可执行文件的安全上下文在“%ProgramFiles%\WindowsApps”的子目录中。按照设计,此重解析点不由 I/O 管理器或内核中的任何过滤器驱动程序处理,因此天真地尝试打开该路径并启用重解析(默认情况下)的代码将失败。 bash,或者更具体地说是 Cygwin/MSYS2,正是这样做的,因此需要修补以支持 appexec 链接。
  • 您的意思是 bash,而不是 Linux。 git-bash 基于 MSYS2,它是从 Cygwin 派生的。
【解决方案2】:

我还收到了来自 Git Bash 的“权限被拒绝”消息。对我有用的是使用“py”:

py file_name.py

参考:Difference between Py and Python

【讨论】:

    猜你喜欢
    • 2019-11-20
    • 2022-07-21
    • 1970-01-01
    • 1970-01-01
    • 2019-03-25
    • 1970-01-01
    • 2018-07-23
    • 2016-10-11
    相关资源
    最近更新 更多