Réponse courte
Pour effectuer une installation propre de Python 3.6.5, utilisez:
brew unlink python # ONLY if you have installed (with brew) another version of python 3
brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
Si vous préférez récupérer une version précédemment installée, alors:
brew info python # To see what you have previously installed
brew switch python 3.x.x_x # Ex. 3.6.5_1
Longue réponse
Il existe deux formules pour installer Python avec Homebrew: python@2
et python
.
Le premier est pour Python 2 et le second pour Python 3.
Remarque: vous pouvez trouver des réponses obsolètes sur le Web où il est mentionné python3
comme nom de formule pour l'installation de Python version 3. Maintenant, c'est juste python
!
Par défaut, avec ces formules, vous pouvez installer la dernière version de la version majeure correspondante de Python. Ainsi, vous ne pouvez pas installer directement une version mineure comme la 3.6.
Solution
Avec brew
, vous pouvez installer un package en utilisant l'adresse de la formule, par exemple dans un référentiel git.
brew install https://the/address/to/the/formula/FORMULA_NAME.rb
Ou spécifiquement pour Python 3
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/COMMIT_IDENTIFIER/Formula/python.rb
L'adresse que vous devez spécifier est l'adresse du dernier commit de la formule (python.rb) pour la version souhaitée. Vous pouvez trouver l'identifiant de commint en consultant l'historique de homebrew-core / Formula / python.rb
https://github.com/Homebrew/homebrew-core/commits/master/Formula/python.rb
Python> 3.6.5
Dans le lien ci-dessus, vous ne trouverez pas de formule pour une version de Python supérieure à 3.6.5. Une fois que les responsables de ce référentiel (officiel) ont publié Python 3.7, ils ne soumettent que des mises à jour de la recette de Python 3.7.
Comme expliqué ci-dessus, avec homebrew, vous n'avez que Python 2 (python @ 2) et Python 3 (python), il n'y a pas de formule explicite pour Python 3.6 .
Bien que ces mises à jour mineures ne soient pour la plupart pas pertinentes dans la plupart des cas et pour la plupart des utilisateurs, je chercherai si quelqu'un a fait une formule explicite pour 3.6.