在Homebrew Python更新之后,Jupyter报告了“糟糕的解释器”

时间:2018-03-04 15:38:42

标签: python ipython homebrew jupyter

自从使用Homebrew更新我的Python

jupyter --version

给出

-bash: /usr/local/bin/jupyter: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory

这是有道理的,因为/usr/local/.../python2.7处不再有Python。但我没有看到任何修复方法。

在更新Python之前,我有一个Python,并且Homebrew的符号链接python指向那里,但现在which -a python给出了

/usr/local/opt/python@2/libexec/bin/python
/usr/local/bin/python
/usr/bin/python

对应于我想要的,分别是

  • Homebrew的2.7,因为它位于PATH
  • 而被发现
  • Homebrew的符号链接3.6.x
  • Apple的旧Python

我还brew link --overwrite --force python2 for good measure,但这没有效果。

如何让jupyterPATH上找到并使用Python 2.7?

2 个答案:

答案 0 :(得分:6)

Homebrew使用python@2公式将Python 2移动为仅keg。 jupyter公式已相应更新,请升级:

brew update && brew upgrade jupyter

请注意,Python 2二进制文件现在只能用作python2python二进制文件(如果由Homebrew安装)是Python 3。

如果您使用pip安装它,请链接Python 2二进制文件并使用pip2重新安装jupyter:

brew link -f python@2
/usr/local/bin/pip2 install -U jupyter

您最终会得到以/usr/local/bin/jupyter行开头的#!/usr/local/opt/python@2/bin/python2.7文件。

答案 1 :(得分:3)

对我有用,只是将Jupiter与正确的Python版本链接。

 rm '/usr/local/bin/jupyter'
 brew link --overwrite jupyter
 brew link --overwrite --dry-run jupyter
 brew unlink jupyter && brew link jupyter