Aggiungi /usr/local/bin
al tuo PATH
variabile d'ambiente, prima nell'elenco di /usr/bin
.
Generalmente questo viene fatto nel file rc della tua shell, ad es. per bash, lo inseriresti in .bashrc
:
export PATH="/usr/local/bin:$PATH"
Questo farà sì che la tua shell cerchi prima un python
in /usr/local/bin
, prima che vada con quello in /usr/bin
.
(Naturalmente, questo significa che devi avere anche /usr/local/bin/python
punta a python2.7
- se non lo è già, dovrai collegarlo simbolicamente.)
Inserisci il comando
which python
//output:
/usr/bin/python
cd /usr/bin
ls -l
Qui puoi vedere qualcosa di simile
lrwxrwxrwx 1 root root 9 Mar 7 17:04 python -> python2.7
il tuo python2.7 predefinito è collegato in modo soft al testo 'python'
Quindi rimuovi il softlink python
sudo rm -r python
quindi riprova il comando precedente
ls -l
puoi vedere che il softlink è stato rimosso
-rwxr-xr-x 1 root root 3670448 Nov 12 20:01 python2.7
Quindi crea un nuovo softlink per python3.6
ln -s /usr/bin/python3.6 python
Quindi prova il comando python
nel terminale
//output:
Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Digita help
, copyright
, credits
o license
per ulteriori informazioni.
Probabilmente non vuoi davvero cambiare il tuo Python predefinito.
La tua distribuzione ha installato un Python di sistema standard in /usr/bin
, e potrebbe avere script che dipendono dalla sua presenza e selezionati da #! /usr/bin/env python
. Puoi di solito farla franca con l'esecuzione di script Python 2.6 in 2.7, ma vuoi rischiare?
Per di più, scimmiottando con /usr/bin
può compromettere la capacità del tuo gestore di pacchetti di gestire i pacchetti. E cambiando l'ordine delle directory nel tuo PATH
influenzerà molte altre cose oltre a Python. (In effetti, è più comune avere /usr/local/bin
davanti a /usr/bin
, e potrebbe essere quello che vuoi davvero, ma se hai il contrario, presumibilmente c'è una buona ragione per questo.)
Ma non hai bisogno per cambiare il tuo Python predefinito in modo che il sistema esegua la versione 2.7 quando digiti python
.
Innanzitutto, puoi impostare un alias della shell:
alias python=/usr/local/bin/python2.7
Digitalo al prompt o inseriscilo nel tuo ~/.bashrc
se vuoi che la modifica sia persistente, e ora quando tu digitare python
esegue il 2.7 scelto, ma quando qualche programma sul tuo sistema tenta di eseguire uno script con /usr/bin/env python
esegue lo standard 2.6.
In alternativa, crea un ambiente virtuale dalla tua 2.7 (o venv separati per progetti diversi) e svolgi il tuo lavoro all'interno della venv.