149 votes

Comment puis-je utiliser Homebrew pour installer à la fois Python 2 et 3 sur Mac ?

Je dois pouvoir passer de Python 2 à Python 3. Comment puis-je le faire en utilisant Homebrew, car je ne veux pas m'embrouiller avec path et m'attirer des ennuis. Pour l'instant, j'ai installé la version 2.7 via Homebrew.

291voto

moliware Points 2351

J'utiliserais pyenv Vous pouvez l'installer :

$ brew install pyenv

Pour activer pyenv dans votre shell Bash, vous devez exécuter :

$ eval "$(pyenv init -)"

Pour que cela soit fait automatiquement pour Bash au démarrage, ajoutez cette ligne à votre fichier ~/.bash_profile . 1

Utilisation :

Une fois que vous avez installé pyenv et l'avez activé, vous pouvez installer différentes versions de python et choisir celle que vous pouvez utiliser. Exemple :

$ pyenv install 2.7.5

Vous pouvez vérifier les versions que vous avez installées avec :

$ pyenv versions

Et vous pouvez passer d'une version de python à l'autre avec la commande :

$ pyenv global 3.3.1

Vous pouvez également définir une version de python pour le répertoire actuel avec :

$ pyenv local 3.5.2

Vous pouvez vérifier en exécutant python --version :

$ python --version
Python 3.5.2

1 Homebrew avait l'habitude de vous indiquer de le faire lors de l'installation de pyenv, mais <a href="https://github.com/Homebrew/homebrew-core/commit/d82ef4e9a5105c9c5da086025c57f89929811763" rel="noreferrer">le message a été supprimé </a>. Pour Zsh et d'autres shells, les étapes précises peuvent être différentes.

77voto

emaillenin Points 6096

Vous pouvez avoir les deux versions installées en même temps.

Pour Homebrew >=1.5.0 :

Depuis le 1er mars 2018, l python sera mise à niveau vers Python 3.x, tandis qu'une nouvelle formule de python@2 La formule sera ajoutée pour Python 2.7, en particulier.

Voir annonce des changements ici ou le document final sur l'utilisation de Homebrew pour Python ici .

Pour les anciens Homebrew :

Pour Python 2.x :

brew install python

Pour Python 3.x :

brew install python3

Maintenant, vous aurez les deux versions installées dans votre machine. Lorsque vous voulez utiliser la version 2, utilisez la fonction python exécutable. Lorsque vous souhaitez utiliser la version 3, utilisez la fonction python3 exécutable.

11voto

Guilherme Garnier Points 1271

Actuellement, Homebrew fournit deux formules différentes pour Python 2 et 3. brew install python installe python3, et brew install python@2 installe python2. Plus de détails dans la documentation Homebrew :

https://docs.brew.sh/Homebrew-and-Python

Si vous avez actuellement la version 2.x installée via Homebrew, Homebrew vous donnera un message tel que :

Error: python 2.7.14 is already installed
To upgrade to 3.6.5, run `brew upgrade python`

Si tu cours :

brew upgrade python

vous devriez être en mesure de le faire :

python --version

y

python3 --version

Pour voir quelles versions de Python 2.x et 3.x sont installées.

6voto

ishandutta2007 Points 3933

Il existe des moyens d'utiliser les deux, mais la solution la plus simple aujourd'hui est d'utiliser pyenv . pyenv permet de passer facilement d'une version à l'autre. Voici ce que j'ai fait pour m'installer :

ÉTAPE 1 :

Supprimez tous les pythons de votre mac

 brew uninstall --ignore-dependencies --force python
 sudo rm -rf ~/miniconda3/
 sudo rm -rf ~/.conda/

Retirez les éléments suivants de ~/.bash_profile

export PATH="/Users/ishandutta2007/miniconda3/bin:$PATH"

et aussi le suivant de ~/.bashrc

export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
export PYTHONPATH=/usr/local/lib/python2.7/site-packages/google:$PYTHONPATH
alias python="/usr/bin/python"

STEP2 :

Installer pyenv et les versions de python dont vous avez besoin

brew update
brew install pyenv
pyenv install 2.7
pyenv install 3.7.0

STEP3 :

ajouter pyenv init a bash_profile o bashrc

echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bash_profile

STEP4 :

Vérifiez ce qui a été installé

pyenv versions
  • system (défini par /Users/ishandutta2007/.pyenv/version)

    2.7

    3.7.0

ÉTAPE 5 :

Choisissez une valeur par défaut

pyenv global 3.7.0

Quand un projet a besoin d'une version plus ancienne, il suffit d'aller dans son dossier racine et d'exécuter

pyenv local 2.7

5voto

Fred Mitchell Points 1068

Sinon, vous pouvez probablement entrer "python3" pour exécuter votre version la plus récente de python3.x et "python" ou "python2" pour exécuter la dernière version 2.x installée.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X