Python2.7 nie działa w 18.04, Python3 jest zainstalowany

10

Zainstalowałem Ubuntu 18.04 w wirtualnym pudełku, a gdy próbuję Pythona -v, mówi, że masz zainstalowany Python3, chcę usunąć Python 3 lub wyłączyć, aby móc używać Python2.7 i uruchamiać niektóre skrypty, które mam.

Rahul
źródło
@karel: dzięki za informacje. Sprawdziłem ponownie z systemem na żywo i stwierdziłem, że nie jest on również zainstalowany w 18.10.
Takkat,
@karel Dziękuję. Zamknięte głosowanie wycofane, a poprzednie komentarze zredagowane :) +1 również za twoją odpowiedź :)
WinEunuuchs2Unix
4
FYI: Python 2 straci wsparcie upstream za nieco ponad rok , więc powinieneś zaplanować rozwidlenie Pythona lub migrację do Pythona 3 wkrótce.
Kevin,
@Rahul Użyj python2lub python3zamiast po prostu python, ponieważ w niektórych systemach (na przykład Arch) pythonbez wersji domyślnie uruchamia się Python 3 (myślę, że Ubuntu zrobi to samo w pewnym momencie). Zgadzając się z Kevinem, powinieneś przeprowadzić migrację do wersji 3.x (pod koniec 2018 r. Jest tylko kilka bibliotek tylko w wersji 2.x)
trolley813 28.12.2018
Zabawne jest to, że niektóre starsze Ubuntu 18.04 nadal mają dowiązanie symboliczne do python2.7 (po zainstalowaniu), ale teraz ubuntu 18.04.02 nie tworzy tego dowiązania symbolicznego. To brzmi dziwnie, kiedy zdajesz sobie sprawę, że 18.04 to LTS ...
Ikar Pohorský

Odpowiedzi:

19

Python 2 nie jest już domyślnie instalowany w nowych instalacjach systemu Ubuntu 18.04 i nowszych. Nie usuwaj python3 z Ubuntu 18.04 i nowszych, w przeciwnym razie oprogramowanie Ubuntu, terminal i wiele innych domyślnie zainstalowanych aplikacji przestanie działać. Jeśli usunąłeś Python 3, a teraz oprogramowanie Ubuntu, terminal i inne aplikacje nie działają, postępuj zgodnie z instrukcjami w tej odpowiedzi, aby zainstalować je ponownie i przywrócić działanie wszystkich aplikacji.

Aby zainstalować Python 2.7 w Ubuntu 18.04 i nowszych, otwórz terminal i wpisz:

sudo apt install python2.7  

Aby uruchomić interpreter Python 2.7, uruchom następującą komendę:

python2.7

Aby uruchomić interpreter Python 3, uruchom następującą komendę:

python3  

Tak czy inaczej interpreter Pythona wyświetli komunikat o wersji po uruchomieniu, który pokazuje, którą wersję Pythona używasz.

Karel
źródło
7

W Ubuntu 18.04 LTS domyślnie instalowane są zarówno Python 2.7, jak i Python 3:

wprowadź opis zdjęcia tutaj
Zrzut ekranu z sesji na żywo

W 18.10. a w 19.04 nie zostanie zainstalowany w sesji na żywo:

wprowadź opis zdjęcia tutaj

Przed użyciem będziesz musiał ręcznie zainstalować Python 2.7.

sudo apt install python

Aplikacje zależne od niego zainstalują go jako zależność.

Takkat
źródło
6

1) Aby zainstalować wersję Python 2 na Ubuntu 18.04, otwórz terminal i wprowadź:

sudo apt install python-minimal

lub

sudo apt install python2.7

Sprawdź wersję:

python --version


2) Jeśli nadal aktualizowana jest lista alternatywnych wersji Pythona 3+ w celu wykonania przełączenia między dowolną wersją Pythona:

update-alternatives --config python

Przykład:

There are 2 choices for the alternative python (providing /usr/bin/python).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/python3.5   2         auto mode
  1            /usr/bin/python2.7   1         manual mode
  2            /usr/bin/python3.5   2         manual mode

Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/bin/python2.7 to provide /usr/bin/python (python) in manual mode

i wybierz odpowiednią wersję, używając liczby całkowitej, jak pokazano powyżej.


3) Jeśli zobaczysz: aktualizacja-alternatywy: błąd: brak alternatyw dla Pythona . Biegać:

ls /usr/bin/python*

Przykładowe dane wyjściowe:

/usr/bin/python  /usr/bin/python2  /usr/bin/python2.7  /usr/bin/python3  /usr/bin/python3.5

Następnie zaktualizuj listę alternatyw Python dla każdej wersji, której chcesz używać z priorytetem 1 i 2:

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

Następnie uruchom ponownie update-alternatives --config pythoni wybierz odpowiednią wersję ..

dojrzały
źródło
Czy możesz wyjaśnić, co dokładnie robią tutaj dwie ostatnie komendy? Jeszcze jedno pytanie zostało zmienione w moim skrypcie z #! / Usr / bin / python na #! / Usr / bin / python2.7. Czy można zmienić ścieżkę env dla python2.7 na / usr / bin / python
Rahul
@Rahul Gdy używasz pythonjako polecenia na terminalu, rozważane są alternatywy / aliasy. Ale w skryptach, ponieważ jesteś absolutną ścieżką Pythona, musisz użyć ścieżki wersji Pythona, której chcesz użyć.
Kulfy
@Rahul, przepraszam naprawione. W tych poleceniach ustawiasz priorytet ostatnich parametrów liczbowych (2 i 1).
dojrzały
Nie mogę głosować wystarczająco za odpowiedzią. Legenda!
Kris Bonev
3

Nie musisz usuwać ani wyłączać python3systemu Ubuntu.

Jeśli potrzebujesz tylko Pythona do uruchamiania małych skryptów, możesz po prostu zainstalować Python 2 jako odpowiedź @ karel.

Jeśli zaczniesz uczyć się języka Python, sugeruję korzystanie ze środowiska wirtualnego lub conda

thangdc94
źródło
tak, mam to teraz, zainstalowałem python2.7 i sprawdziłem whereis python2.7 i wykonałem skrypt za pomocą tej env .. Dzięki
Rahul
Zwykle nie instaluję pakietu conda, instaluję pakiet według pip. Po prostu używam condado tworzenia globalnego dostępu wirtualnego env.
thangdc94,
2

Nie ma potrzeby wyłączania Pythona 3. Możesz uruchomić Python 2.7 za pomocą polecenia python2 nazwa_pliku.py. Możesz sprawdzić wersję Pythona 2 python2 --version

Samihan Jawalkar
źródło