Chcę zaktualizować kompilację Pythona na moim Linux-ie, ale jedynym sposobem, w jaki wiem, jak to zrobić, jest odinstalowanie bieżącej wersji i zainstalowanie nowej. Mój system jest już aktualny (zaktualizowałem wczoraj). Chciałem wiedzieć, czy istnieje sposób na aktualizację określonego programu z wiersza poleceń, na przykład sudo apt-get update <program-name>
. Wiem, że to polecenie nie istnieje, ale mam nadzieję, że coś równoważnego.
ubuntu
python
linux-distributions
Wydajność Issliss
źródło
źródło
Odpowiedzi:
Jak już zauważyli inni, bare
sudo apt-get install package
zainstaluje najnowszą dostępną wersję, w razie potrzeby zastępując starszą.Jednak w przypadku niektórych programów (w tym Pythona) sytuacja wygląda nieco inaczej. Niektóre główne, bardzo i niekompatybilnie różne wersje otrzymują własne pakiety. Na przykład, Python 2.6 , Python 2.7 , Python 3.1 wszystkie działają w osobnych pakietach na Ubuntu.
Szczególnie ważny jest fakt, że jedną z zasad Ubuntu jest intensywne używanie Pythona do pisania oprogramowania dla użytkowników końcowych. W rzeczywistości dość duża część systemu jest napisana w języku Python. W tej chwili kod działa w Pythonie 2.6 - więc ta wersja jest domyślna podczas instalacji; a kod nie będzie łatwo działał, powiedzmy, w Pythonie 2.7 - ponieważ istnieją niezgodności. Aby przełączyć system na Python 2.7, należy wykonać pracę polegającą na aktualizacji i ponownym przetestowaniu wszystkich skryptów. Nie da się tego łatwo zrobić; oznacza to, że nie można po prostu „przełączyć” systemu na Python 2.7 i usunąć starszą wersję.
Ale. Jeśli nie zależy ci na wymyślnych narzędziach swojego systemu i potrzebujesz tylko nowego Pythona - nie widzę przeszkód. Idź i
sudo apt-get install python3
koduj dzielnie dla 3.x Pythona; pamiętaj tylko, aby uruchamiać skryptypython3
i używać#!/usr/bin/env python3
linii shebang.źródło
dotyczy to Pythona (3.3.3) dla różnych wersji należy użyć odpowiedniego numeru wersji.
źródło
sudo apt-get install python3.6
działało dla mnie, ale nie wpływa w żaden sposób na Python 3.5.sudo apt-get install python 3.6.1
> Note, selecting 'libghc-unix-time-dev-0.3.6-1b8cf' for regex '3.6.1' ...
Oddzielne argumenty mówią aptowi, aby zainstalował wiele pakietówpython is already the newest version (2.7.12-1~16.04). python set to manually installed.
jakieś pomysły?Spowoduje to zainstalowanie Pythona 3 w systemie Linux obok bocznego Pythona 2. Aby uzyskać dostęp do Pythona 3, wejdź po otwarciu terminala.
źródło
E: Unable to locate package python3.6 E: Couldn't find any package by glob 'python3.6' E: Couldn't find any package by regex 'python3.6'
E: Unable to locate package python3.6
Zbliżasz się do myślenia o poleceniu podobnym
sudo apt-get update
(które jest rzeczywistym poleceniem, ale nie robi tego, co chcesz).Aby zaktualizować Python i wszystko, co zainstalowałeś, po prostu wykonaj polecenie:
źródło
Z naszej siostrzanej strony: https://askubuntu.com/questions/44122/how-to-upgrade-a-single-package-using-apt-get
Każde z tych poleceń aktualizuje się, instalując, co w wielu przypadkach powinno działać dobrze, ale może nie być tym, czego szukasz w konkretnym przypadku.
Jeśli chcesz tylko zaktualizować konkretny pakiet ORAZ tylko wtedy, gdy jest już zainstalowany, użyj polecenia:
źródło
Jeśli chcesz zaktualizować tylko niewielką wersję pakietu Python, np. 2.7.11+ t0 2.7.12, zrób
sudo apt-get install python2.7
to dla ciebieźródło
pyenv może być dla Ciebie dobrą opcją: https://github.com/yyuu/pyenv
W odniesieniu do odpowiedzi @ ulidtko , możliwą alternatywą dla całkowitego zastąpienia systemowego pytona może być użycie izolowanego środowiska z żądaną wersją Pythona. Jest to podobne do „środowiska wirtualnego”, ale dotyczy samego pythona. Użyłem tego w przeszłości dla starszych projektów, które działają na Pythonie 2.6, a także podczas aktualizacji ze starszej wersji Pythona do Pythona3.
źródło
Uważam, że to powinno zadziałać. Musisz oczywiście zmienić „python”, aby oczywiście pasował do odpowiedniej nazwy pakietu w repozytorium.
źródło
Jak wszyscy wiemy, że Python jest dostarczany z wersją 3.5. Tak więc bardzo łatwo jest zaktualizować Python 2.7 (który jest domyślnie obecny w Ubuntu 16.04) do Python 3.5.
Wykonaj następujące kroki:
Użyj poniższego kodu, aby zaktualizować Python 2.7 do 3.5
sudo apt-get install python3.5
Zostaniesz poproszony o zgodę, a następnie Daj opcję Y.
clear
Sprawdź wersję Pythona za pomocą poniższego polecenia.
Python -version
źródło
W jednym przypadku, w którym korzystasz z wersji LTS, twój python może być opóźniony przez mniejszą wersję, powiedzmy 2.7.5 zamiast 2.7.10.
Jedną z możliwości może być aktualizacja systemu :
prompt=normal
w/etc/update-manager/release-upgrades
sudo do-release-upgrade
polecenie, aby menedżer aktualizacji wykonał zadanie aktualizacji do najnowszej (= nie LTS) wersji.Jak zawsze podczas aktualizacji , zapoznaj się z uwagami do wydania , ponieważ aktualizacja może w niektórych przypadkach uszkodzić twój system, patrz komentarz @ Gino .
źródło