web-dev-qa-db-fra.com

Jupyter signale "mauvais interprète" après la mise à jour de Homebrew Python

Depuis la mise à jour de mon Python avec Homebrew

jupyter --version

donne

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

ce qui a du sens, puisqu'il n'y a plus de Python à /usr/local/.../python2.7. Mais je ne vois aucun moyen de réparer cela. 

Avant de mettre à jour Python, il y avait un Python à cet emplacement et le lien générique python de l'Homebrew pointé ici, mais maintenant, which -a python donne

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

qui correspond à ce que je veux, et sont, respectivement

  • Homebrew's 2.7, qui se trouve car il est sur PATH
  • Le lien symbolique de Homebrew 3.6.x
  • Vieux Python d'Apple

J'ai aussi brew link --overwrite --force python2pour faire bonne mesure , mais cela n'a aucun effet.

Comment faire pour que jupyter trouve et utilise Python 2.7 sur ma PATH?

7
orome

Cela fonctionne pour moi, c’est juste pour relier Jupiter avec la version correcte de Python.

 rm '/usr/local/bin/jupyter'
 brew link --overwrite jupyter
 brew link --overwrite --dry-run jupyter
 brew unlink jupyter && brew link jupyter
2
A. Juarez

Homebrew a déplacé le Python 2 pour qu'il ne contienne que des fûts, en utilisant la formule python@2. La formule jupyter a été mise à jour en conséquence, veuillez la mettre à niveau:

brew update && brew upgrade jupyter

Notez que le binaire Python 2 est maintenant disponible uniquement en tant que python2, le binaire python, si installé par Homebrew, est Python 3.

Si vous l'avez installé avec pip, liez le binaire Python 2 et réinstallez jupyter à l'aide de pip2:

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

Vous vous retrouverez avec un fichier /usr/local/bin/jupyter qui commence par la ligne #!/usr/local/opt/python@2/bin/python2.7.

6
Martijn Pieters