GNU/Linux >> Znalost Linux >  >> Linux

Jak zajistit, aby příkaz python3 spouštěl Python 3.6 místo 3.5?

Pokud hledáte jinou než přijatou odpověď. Zde je řešení, které mi zachránilo život. Nahrazuje ji novou verzí.


$ python3 --version
  Python 3.5.2

$ ls -lh /usr/bin/python3
  lrwxrwxrwx 1 root root 9 Mar 23  2016 /usr/bin/python3 -> python3.5

$ sudo mv /usr/bin/python3 /usr/bin/_python3
$ sudo cp /usr/bin/python3.6 /usr/bin/python3

$ python3 --version
  Python 3.6.11


Výchozí verzi pythonu můžete aktualizovat v celém systému pomocí update-alternatives příkaz.

$ sudo update-alternatives  --set python3 /usr/bin/python3.6

nebo můžete také spustit následující příkaz a vybrat si z různých verzí pythonu nainstalovaných na hostiteli.

$ sudo update-alternatives --config python

udělat

rm /usr/bin/python3
ln -s /usr/bin/python3.6 /usr/bin/python3

mnohem lepší řešení :

Sakra, Python se používá ve velké části Ubuntu pro systémové skripty a software a software se spoléhá na to, že Python (a příkazy pro spuštění Pythonu) je na určitém místě. udělat zpět.

rm /usr/bin/python3 
ln -s /usr/bin/python3.5 /usr/bin/python3 

vytvořit alias v ~/.bash_aliases

alias python3='/usr/bin/python3.6' 

Skripty pak mohou začínat něčím jako:

#!/usr/bin/env python3 

Fungovalo perfektně...

ln -sf /usr/bin/python3.5 /usr/bin/python3

Linux
  1. Jak nainstalovat Saltstack Master a Minion na Debian 11

  2. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  3. /usr/bin Vs /usr/local/bin Na Linuxu?

  1. Terminál se po upgradu Pythonu na 3.7 neotevře?

  2. Náhodně smazáno /usr/bin/python3.5, nelze znovu nainstalovat?

  3. /usr/bin/ld:nelze najít -lpython2.7

  1. cmake --version ukazuje na /usr/bin/cmake, zatímco který cmake ukazuje na /usr/local/bin

  2. Jak nastavit výchozí Python3.8 na mém Macu pomocí Homebrew?

  3. Jaké jsou významy /usr/sbin, /usr/local/sbin a /usr/local/bin?