[英]Unable to Run Python 3 After Homebrew Installation
使用主页上的脚本安装 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 相关的文件。 看起来 Python 2.7 也不在我的 Mac 上。
这是我安装 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 安装,因此您的路径和用法与您想要执行的操作一致非常重要。
我想我发现了问题所在。
我猜想,在某个时刻,您是从官方网站而不是通过 Homebrew 安装了 python。 就我而言,我是通过官方网站Python 3.6.4
。 几个月后,我想升级它,并注意到它非常复杂。 所以,我决定转向 Homebrew。 打开一个终端窗口,让我们尝试解决这个问题:
首先,让我们卸载以前的 Python 版本:
sudo rm -rf /Library/Frameworks/Python.framework sudo rm -rf /usr/local/bin/python3
然后,从$PATH
变量中删除以前的框架:
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
重新启动计算机并通过 Homebrew Python 2 和 3 安装:
brew update brew install python brew install python3
这对我有用。 现在,如果输入python3 --version
我得到Python 3.7.0
,一切正常:)
我有同样的问题。 我学会了如何永久修复它:
如果您有上述错误,那么已经通过例如Python.org执行了正式的 Python 安装(正如其他人所提到的)。 这会在 Bash 别名之外为python
或python3
命令创建某种别名。 因此,虽然where python3
可能指向/usr/local/bin/python3
, python3
仍会尝试调用/Library/Frameworks/Python.framework/Versions/3.5/bin/python3
。
注意:
/usr/bin/python
/usr/local/bin/
/Library/Frameworks/Python.framework/
这个错误:
-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
。
好的,这是我收集的:
python3 --version
将不起作用python3 --version
将工作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.