Comment mettre à jour le système Python de Mac

18

Je suis sur Mavericks en ce moment, et je veux mettre à jour la version du système Python (2.7.5) vers la dernière (2.7.7) de http://www.python.org , parce que je veux installer pygame. Ce que je dois faire? Je voudrais pouvoir exécuter la dernière version de Python lorsque je tape pythondans le terminal, j'ai cherché un guide sur le net mais c'est un peu déroutant pour moi.

g_rmz
la source

Réponses:

10

Le remplacement du système Python de Mac OS X n'est pas recommandé en raison d'une incompatibilité avec d'autres logiciels. Cependant, il existe des binaires Mac sur la page de téléchargement Python qui peuvent être installés à un emplacement différent. Une fois installé, vous devrez peut-être modifier votre variable d'environnement PATH pour que le nouvel interpréteur Python s'exécute lorsqu'il pythonest appelé à partir de la ligne de commande.

Pour modifier votre PATH, déterminez le chemin absolu du dossier contenant le binaire Python. Cela peut ressembler à quelque chose /Applications/Python/.../bin. Ajoutez la ligne suivante à votre ~/.bash_profilefichier:

export PATH=/path/to/new/python/bin:$PATH

La modification prendra effet après le redémarrage de votre shell.

Vortico
la source
1
Oui, je sais qu'une fois installé, le nouveau dossier Python est créé dans les applications, mais comment mettre à jour la variable PATH?
g_rmz
J'ai mis à jour la réponse.
Vortico
2
.bashrcn'est pas utilisé sur OS X. Vous en avez besoin .bash_profile. N'oubliez pas non plus de citer $PATH, par exempleexport PATH="/path/to/bin/folder:$PATH"
slhck
Le nouveau Python a déjà fait lui-même la mise à jour du shell! Mais maintenant que j'ai installé pygame lorsque j'essaie de l'importer, je reçois
g_rmz
"Traceback (dernier appel le plus récent): Fichier" <stdin> ", ligne 1, dans le fichier <module>" /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/ __init__.py ", ligne 95, dans <module> depuis pygame.base import * ImportError: dlopen (/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so , 2): aucune image appropriée trouvée. A trouvé: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so: aucune architecture correspondante dans le wrapper universel "
g_rmz
5

Le moyen le plus simple et non intrusif serait d'utiliser Homebrew :

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Ensuite, lisez les instructions imprimées à partir de votre coque.

Installation de Python 3

Avec Homebrew, vous pouvez installer Python 3.x:

brew install python

Cela mettra un python3binaire /usr/local/binet un pythonpointage binaire python3en /usr/local/opt/python/libexec/bin.

Vous obtiendrez en outre une pip3commande pour cette version de Python.

Ces formules n'entreront pas en conflit ou ne prévaudront pas sur les packages système, sauf si vous remplacez votre PATH. Autrement dit, si vous voulez vous pythony référer python3, ajoutez ce qui suit à votre configuration de shell:

export PATH=/usr/local/opt/python/libexec/bin:$PATH

Lisez les documents Homebrew Python pour plus d'informations.

Installation de Python 2.7

Vous pouvez également obtenir une version à jour de Python 2.7, si vous en avez besoin pour des raisons héritées:

brew install python@2

Cela vous donnera un python2binaire et remplacera le système pythonpour utiliser le Python 2.7 construit par Homebrew.

slhck
la source
0

Avez-vous essayé d'installer le port ?. J'ai récemment mis à niveau mon python avec l'installation de port sur 10.8.4

Saikrishna
la source