Ich möchte den Python-Build auf meiner Linux-Box aktualisieren, aber die einzige Möglichkeit, wie ich es tun kann, besteht darin, die aktuelle Version zu deinstallieren und die neue zu installieren. Mein System ist bereits auf dem neuesten Stand (ich habe gestern aktualisiert). Ich wollte wissen, ob es eine Möglichkeit gibt, ein bestimmtes Programm über die Befehlszeile zu aktualisieren, z sudo apt-get update <program-name>
. Ich weiß, dass dieser Befehl nicht existiert, aber ich hoffe, dass etwas Äquivalentes dies tut.
ubuntu
python
linux-distributions
efficiencyIsBliss
quelle
quelle
Antworten:
Wie bereits erwähnt,
sudo apt-get install package
installiert bare die neueste verfügbare Version und ersetzt bei Bedarf die ältere.Bei einigen Programmen (darunter Python) ist die Situation jedoch etwas anders. Einige wichtige, sehr und inkompatibel unterschiedliche Versionen erhalten ihre eigenen Pakete. Zum Beispiel leben Python 2.6 , Python 2.7 , Python 3.1 alle in separaten Paketen auf Ubuntu.
Von besonderer Bedeutung ist die Tatsache, dass eine der Ubuntu-Richtlinien darin besteht, Python ausgiebig zum Schreiben von Endbenutzersoftware zu verwenden. Also in der Tat ziemlich großer Teil des Systems ist in Python geschrieben. Im Moment läuft der Code auf Python 2.6 - daher ist diese Version bei der Installation die Standardversion. und der Code wird nicht einfach auf Python 2.7 laufen - weil Inkompatibilitäten bestehen. Um das System auf Python 2.7 umzustellen, müssen Sie zunächst alle Skripte aktualisieren und erneut testen. Dies ist nicht einfach möglich. Das heißt, Sie können Ihr System nicht einfach auf Python 2.7 "umstellen" und die ältere Version löschen.
Aber. Wenn Sie sich nicht für ausgefallene Zahnräder Ihres Systems interessieren und nur neueres Python benötigen, sehen Sie keine Hindernisse. Gehen Sie und
sudo apt-get install python3
codieren Sie mutig für 3.x Python; Denken Sie daran, Ihre Skripte mit shebang line zu startenpython3
und zu verwenden#!/usr/bin/env python3
.quelle
Dies ist für Python (3.3.3) für verschiedene Versionen die entsprechende Versionsnummer verwendet werden sollte.
quelle
sudo apt-get install python3.6
hat für mich funktioniert, hat aber keinerlei Einfluss auf 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' ...
Getrennte Argumente weisen apt an, mehrere Pakete zu installierenpython is already the newest version (2.7.12-1~16.04). python set to manually installed.
irgendwelche Ideen?Dadurch wird Python 3 unter Linux zusammen mit Python 2 installiert. Um auf Python 3 zuzugreifen, geben Sie nach dem Öffnen des Terminals Folgendes ein.
quelle
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
Sie sind mit dem Gedanken an einen Befehl wie
sudo apt-get update
(der ein tatsächlicher Befehl ist, aber nicht das tut, was Sie wollen.)Führen Sie einfach den folgenden Befehl aus, um Python und alles andere, was Sie installiert haben, zu aktualisieren:
quelle
Von unserer Schwestersite: https://askubuntu.com/questions/44122/how-to-upgrade-a-single-package-using-apt-get
Jeder dieser Befehle wird bei der Installation aktualisiert. Dies sollte in vielen Fällen problemlos funktionieren, ist jedoch in bestimmten Fällen möglicherweise nicht das, wonach Sie suchen.
Wenn Sie nur ein bestimmtes Paket UND nur dann aktualisieren möchten, wenn es bereits installiert ist, verwenden Sie den folgenden Befehl:
quelle
Wenn Sie nur eine kleinere Version des Python-Pakets wie 2.7.11+ bis 2.7.12 aktualisieren möchten,
sudo apt-get install python2.7
sollten Sie dies tunquelle
pyenv ist möglicherweise eine gute Option für Sie: https://github.com/yyuu/pyenv
In Bezug auf die Antwort von @ ulidtko besteht eine mögliche Alternative zum vollständigen Ersetzen des System-Pythons darin, eine isolierte Umgebung mit Ihrer gewünschten Python-Version zu verwenden. Dies ähnelt einer "virtuellen Umgebung", gilt jedoch für Python selbst. Ich habe dies in der Vergangenheit für Legacy-Projekte verwendet, die auf Python 2.6 ausgeführt werden, sowie beim Upgrade von einer Legacy-Version von Python auf Python3.
quelle
Ich glaube das sollte funktionieren. Sie müssen 'python' so ändern, dass es offensichtlich mit dem entsprechenden Paketnamen in Ihrem Repository übereinstimmt.
quelle
Wie wir alle wissen, wird Python mit Version 3.5 ausgeliefert. Daher ist es sehr einfach, Python 2.7 (das standardmäßig in Ubuntu 16.04 enthalten ist) auf Python 3.5 zu aktualisieren.
Befolgen Sie die folgenden Schritte:
Verwenden Sie den folgenden Code, um Python 2.7 auf 3.5 zu aktualisieren
sudo apt-get install python3.5
Sie werden nach Ihrer Erlaubnis gefragt, und geben Sie die Option Y ein.
clear
Überprüfen Sie die Python-Version mit dem folgenden Befehl.
Python-Version
quelle
In dem Einzelfall, in dem Sie eine LTS-Version ausführen, ist Ihr Python möglicherweise von einer Nebenversion betroffen, z. B. 2.7.5 statt 2.7.10.
Eine Möglichkeit wäre , das System zu aktualisieren :
prompt=normal
in/etc/update-manager/release-upgrades
sudo do-release-upgrade
, dass der Upgrade-Manager das Upgrade auf die neueste (= Nicht-LTS-) Version durchführt.Lesen Sie wie immer beim Upgrade die Versionshinweise , da das Upgrade in einigen Fällen Ihr System beschädigen kann (siehe @ Gino's Kommentar) .
quelle