Come aggiornare il sistema Python di Mac


18

Al momento sono su Mavericks e voglio aggiornare la versione del sistema Python (2.7.5) all'ultima (2.7.7) da http://www.python.org , perché voglio installare pygame. Cosa devo fare? Mi piacerebbe essere in grado di eseguire l'ultima versione di Python quando scrivo pythonnel terminale, ho cercato qualche guida in rete, ma è tutto un po 'confuso per me.

Risposte:


10

La sostituzione del sistema di Mac OS X Python non è consigliata a causa dell'incompatibilità con altri software. Tuttavia, ci sono file binari Mac nella pagina di download di Python che possono essere installati in una posizione diversa. Una volta installato, potrebbe essere necessario modificare la variabile di ambiente PATH in modo che il nuovo interprete Python verrà eseguito quando pythonviene richiamato dalla riga di comando.

Per modificare il PERCORSO, determinare il percorso della cartella assoluta contenente il binario Python. Potrebbe sembrare qualcosa del genere /Applications/Python/.../bin. Aggiungi la seguente riga al tuo ~/.bash_profilefile:

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

La modifica avrà effetto dopo il riavvio della shell.


1
Sì, so che una volta installata la nuova cartella Python viene creata in Applicazioni, ma come aggiorno la variabile PATH?
g_rmz,

Ho aggiornato la risposta.
Vortico,

2
.bashrcnon viene utilizzato su OS X. È necessario .bash_profile. Inoltre, non dimenticare di citare $PATH, ad esempioexport PATH="/path/to/bin/folder:$PATH"
slhck il

Il nuovo Python ha già fatto l'aggiornamento della shell da solo! Ma ora che ho installato pygame quando provo a importarlo, ricevo
g_rmz,

"Traceback (ultima chiamata più recente): file" <stdin> ", riga 1, in <module> File" /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/ __init__.py ", riga 95, in <modulo> da import pygame.base * ImportError: dlopen (/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so , 2): nessuna immagine adatta trovata. Trovato: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so: nessuna architettura corrispondente nel wrapper universale "
g_rmz

5

Il modo più semplice e non invadente sarebbe usare Homebrew :

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

Quindi, leggi le istruzioni stampate dalla tua shell.

Installazione di Python 3

Con Homebrew puoi installare Python 3.x:

brew install python

Ciò inserirà un python3binario /usr/local/bine un pythonbinario che punta a python3dentro /usr/local/opt/python/libexec/bin.

Riceverai inoltre un pip3comando per quella versione di Python.

Queste formule non entreranno in conflitto o avranno la precedenza sui pacchetti di sistema a meno che non si ignori il proprio PATH. Cioè, se si desidera pythonfare riferimento python3, aggiungere quanto segue alla configurazione della shell:

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

Leggi i documenti Homebrew Python per maggiori informazioni.

Installazione di Python 2.7

Puoi anche ottenere una versione aggiornata di Python 2.7, se necessario per motivi legacy:

brew install python@2

Questo ti darà un python2binario e sovrascriverà il sistema pythonper usare Python 2.7 costruito in Homebrew.


0

Hai provato a installare la porta ? Di recente ho aggiornato Python con l'installazione della porta su 10.8.4

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.