【问题标题】:Unable to Run Python 3 After Homebrew Installation安装 Homebrew 后无法运行 Python 3
【发布时间】:2016-06-30 08:13:54
【问题描述】:

在使用他们主页上的脚本安装 Homebrew 并检查 brew doctor 是否一切正常后,我发出 brew install python3 以便在我的 Mac 上安装 Python 3。

在我尝试运行 python3 --version 之前,一切似乎都很好;我最终得到:

-bash: /Library/Frameworks/Python.framework/Versions/3.5/bin/python3: No such file or directory

我检查了文件目录以查看发生了什么,实际上,我没有在我的框架文件夹中看到任何与 Python 相关的文件。我的 Mac 上似乎也没有 Python 2.7。

这是我安装 Python 3 后得到的:

Summary ???? /usr/local/Cellar/python3/3.5.1: 3,438 files, 51.5M

edit_2:也许这与没有 Python 框架有关?我刚刚从 Python 网站上读到了这篇文章:

Apple 提供的 Python 版本分别安装在 /System/Library/Frameworks/Python.framework 和 /usr/bin/python 中。您不应修改或删除这些内容,因为它们受 Apple 控制并被 Apple 或第三方软件使用。请记住,如果您选择从 python.org 安装更新的 Python 版本,您的计算机上将有两个不同但功能正常的 Python 安装,因此您的路径和用法与您想要做的一致非常重要。

【问题讨论】:

  • 我自己通过 brew 使用 Python 的亲身经历让我得出了这样一个结论:螺丝 brew(对于 Python ......我仍然用它来做其他事情),去main Python site 下载它从那里。我知道向你提出这个建议听起来很烦人,但我只是不想打扰 brew 正在做的不同事情,而且主站点的一切都按照我期望的方式运行——盒子。
  • @idjaw 不用担心;我实际上会对这本书感到恼火,甚至让我下载我并不真正需要的东西。我会稍等一下,看看是否有人有办法解决这个问题。否则,我将尝试弄清楚如何卸载我通过 Homebrew 安装的所有内容并遵循您的建议。
  • 我的自制软件在/usr/local/中安装了Python(2和3);你的自制软件是如何安装在/Library/Frameworks 中的?
  • @Evert 我不知道;我是编程新手。
  • 看看/usr/local/bin/里有没有东西。

标签: python macos python-3.x terminal homebrew


【解决方案1】:

这个错误:

-bash: /Library/Frameworks/Python.framework/Versions/3.5/bin/python3: No such file or directory

建议使用不同的方式(不是 Homebrew)以前(尝试)安装 Python 3 的残余。

(我认为这实际上是从 www.python.org 安装 Python 的地方。不过我不知道,因为我要么从未尝试过该软件包,但只从源代码安装了 www.python.org 版本。不过,这表明您已经尝试安装 Python 3.5,但失败了,而您现在正在尝试 Homebrew。)

我建议将其移开(重命名),这样您的系统就无法识别它。类似的东西

mv /Library/Frameworks/Python.framework/Versions/3.5 /Library/Frameworks/Python.framework/Versions/3.5-aside

(如果该目录中有其他版本的 Python 3,您可能希望对它们执行相同的操作。)

还要检查python3 不是别名。命令如

which python3
type python3
alias python3

将揭示这一点。

排除干扰 Python 3 后,再次尝试通过自制软件重新安装 Python 3。您可能需要卸载 + 重新安装。
安装完成后仔细阅读任何自制消息,特别是如果它提到有关链接文件的内容:您可能需要运行类似 brew link python3 的内容。

【讨论】:

    【解决方案2】:

    好的,这就是我收集到的:

    【讨论】:

    • 这是安装 python 的另一种方式,而 OP 明确解决了 Homebrew 的问题。
    【解决方案3】:

    我有同样的问题。我学会了如何永久修复它:

    1. 在 Mac Finder 中打开“应用程序”并将 Python 拖到垃圾箱。
    2. 清空垃圾桶

    如果您遇到上述错误,则已通过例如执行了官方 Python 安装(正如其他人所提到的)。 Python.org。这会为 Bash 别名之外的 pythonpython3 命令创建某种别名。所以虽然where python3 命令可能指向/usr/local/bin/python3python3 仍然会尝试调用/Library/Frameworks/Python.framework/Versions/3.5/bin/python3

    注意:

    • MacOS系统Python为/usr/bin/python
    • Homebrew Python(s) 将位于/usr/local/bin/
    • 作为 Apple 应用程序安装的 Python 位于 /Library/Frameworks/Python.framework/

    【讨论】:

    • 感谢您的注意:section..它真的很方便和有用
    【解决方案4】:

    我想我发现了问题所在。

    我猜,在某个时刻,您从官方网站而不是通过 Homebrew 安装了 python。 就我而言,我是通过官方网站Python 3.6.4 安装的。几个月后,我想升级它,发现它非常复杂。所以,我决定搬到 Homebrew。打开一个终端窗口,让我们尝试解决这个问题:

    1. 首先,让我们卸载以前的 Python 版本:

       sudo rm -rf /Library/Frameworks/Python.framework
       sudo rm -rf /usr/local/bin/python3
      
    2. 然后,从$PATHvariable 中删除之前的框架:

       nano ~/.bash_profile
      

    你会看到类似的东西:

        # Setting PATH for Python 2.7
        # The original version is saved in .bash_profile.pysave
        PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
        export PATH
    
        # Setting PATH for Python 3.6
        # The original version is saved in .bash_profile.pysave
        PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"
        export PATH`
    

    这是问题所在:这些路径不存在。评论$PATH editions(或删除它们):

        # Setting PATH for Python 2.7
        # The original version is saved in .bash_profile.pysave
        # PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
        # export PATH
    
        # Setting PATH for Python 3.6
        # The original version is saved in .bash_profile.pysave
        # PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"
        # export PATH
    
    1. 重启电脑并通过 Homebrew Python 2 和 3 安装:

       brew update
       brew install python
       brew install python3
      

    这对我有用。现在,如果输入python3 --version 我得到Python 3.7.0,一切正常:)

    【讨论】:

    • 无需重启电脑,打开一个新的终端窗口即可:)
    猜你喜欢
    • 1970-01-01
    • 2013-08-05
    • 1970-01-01
    • 1970-01-01
    • 2013-08-05
    • 2021-12-29
    • 2018-01-14
    • 1970-01-01
    • 2022-11-05
    相关资源
    最近更新 更多