Come faccio a eseguire Python 3.1 sul terminale?


14

Al momento, quando digito "python" sul terminale ottengo v2.6 che va bene e dandy ma come posso impostarlo per usare v3.1 invece? Esiste una variabile "path" là fuori che posso cambiare come windows?

EDIT: ho già installato e funzionante python3. Voglio solo sapere come impostarlo come versione predefinita di Python delle shell.


python3 vs python dalla riga di comando.
— earthmeLon

Risposte:


18

Usa python-virtualenv per creare un ambiente virtuale python.

Seleziona la versione di Python da creare nell'ambiente virtuale:

virtualenv --python=/usr/bin/python3.1 myvirtualenv

Per gestire più ambienti virtuali Python, installa l' estensione virtualenvwrapper .

Perché virtualenv?

Il problema di base che si sta affrontando è una delle dipendenze e delle versioni e delle autorizzazioni indirette. Immagina di avere un'applicazione che richiede la versione 1 di LibFoo, ma un'altra applicazione richiede la versione 2. Come puoi utilizzare entrambe queste applicazioni? Se installi tutto in /usr/lib/python2.4/site-packages (o qualunque sia la posizione standard della tua piattaforma), è facile finire in una situazione in cui aggiorni involontariamente un'applicazione che non dovrebbe essere aggiornata.


Se la mia app sarà mai pubblica, userò sicuramente questo grazie.
— Giovanni

10

Prima di tutto, devi installare il python3pacchetto. Dopo averlo installato, vai su un terminale e digita:

sudo update-alternatives --config python

quindi scegli python3 dall'elenco che viene presentato.

Se non funziona, potrebbe essere necessario ricreare il collegamento simbolico. Prima salvalo:

sudo mv /usr/bin/python /usr/bin/pythonSAVE

successivamente, crea le alternative:

sudo update-alternatives --install python2.5 python /usr/bin/python2.5 2
sudo update-alternatives --install python3.1 python /usr/bin/python3.1 1

crea un nuovo link simbolico:

sudo ln -s /etc/alternatives/python /usr/bin/python

Infine, scegli quello (python3) che vuoi usare:

sudo update-alternatives --config python

E se devi tornare a python2, ripeti il ​​comando:

sudo update-alternatives --config python

Suppongo che basta installare il pacchetto e le alternative di aggiornamento funzioneranno molto bene, potrebbe non essere necessario ricreare i collegamenti da zero. Grazie!

EDIT: Come sottolineato qui la update-alternativescon le --installopzioni accetta un collegamento assoluto, quindi potrebbe essere necessario per l'esecuzione:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.5 2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.1 1

Ho provato a correre sudo update-alternatives --config python, ma mi dice che update-alternatives: error: no alternatives for python.ho provato a ricreare il collegamento simbolico come hai detto, ma non sembra che cambi nulla ... Cosa potrebbe esserci di sbagliato?
— Sean Bone,

1

Prima installa Python 3.1 usando il repository dead snakes: https://launchpad.net/~fkrull/+archive/deadsnakes

Quindi è possibile digitare 'python3' dalla riga di comando per eseguire Python 3.1 mantenendo il normale sistema Python.


+1 - Sembra inutile, dato che si python3.1-minimaltrova nei repository Ubuntu, ma in realtà questo repository contiene python2.4e python2.5- il che è piuttosto carino. (Devo usare Python 2.4 per il calcolo ad alte prestazioni, conoscere il dolore ...)
— Stefano Palazzo
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.