Ich habe Python 3.3 unter Ubuntu 12.10 erfolgreich installiert. Da ich nicht mehrere Versionen von Python benötige, möchte ich das vorhandene Python 2.7 entfernen. Wenn ich das versuche, benutze ich
sudo apt-get remove python2.7
Ubuntu warnt mich, dass es Unmengen systemabhängiger Komponenten gibt, die ebenfalls entfernt werden. Es sieht wirklich beängstigend aus.
Gibt es eine Möglichkeit, Python 2.7 zu entfernen, ohne die systemabhängigen Komponenten zu entfernen, oder kann ich diese Abhängigen anweisen, Python 3.3 zu verwenden?
python
python-2.7
Phoenix Bai
quelle
quelle
Antworten:
Das kannst du nicht.
Aus dem Ubuntu-Wiki / Python :
Dies bedeutet, dass viele Basispakete von 2.7 abhängig sind und es noch viel Zeit in Anspruch nehmen wird, um die Dinge zu migrieren. Beachten Sie, dass Python 3 zahlreiche inkompatible Änderungen aufweist - es handelt sich nicht um ein reguläres Paket-Upgrade.
Wenn Sie Python 2.7 wirklich loswerden möchten, müssen Sie auf die Version 14.04 warten, es gibt jedoch keine Garantie.
quelle
Das kannst du nicht und das willst du auch nicht.
Python änderte sich drastisch zwischen 2.7 und 3.0 und brach die Abwärtskompatibilität. Python-Skripte, die für 2.7 geschrieben wurden und zur Unterstützung eines großen Teils der Systeminfrastruktur verwendet werden, funktionieren mit Python 3.x nicht unbedingt ordnungsgemäß. Diese Skripte müssen aktualisiert werden, damit sie mit der neuen Version funktionieren. Bis dahin müssen Sie Python 2.7 beibehalten.
Aus diesem Grund stellen Sie eine so große Anzahl von Abhängigkeiten zum alten Python fest - das System hängt davon ab. Außerdem schadet es nicht, wenn beide Versionen von Python auf demselben System installiert sind. Und Sie werden möglicherweise in Zukunft auf Anwendungen stoßen, die immer noch Python 2.7 verwenden. Daher ist es eine gute Idee, es zu behalten.
quelle
Kam 2019 hierher, weil ich standardmäßig in Python3 entwickelt habe und zu demselben Ergebnis wie OP kam, nachdem ich gesehen hatte, was nach dem Ausführen entfernt werden würde
apt purge python
Da ich eigentlich nur mit Python3 telefonieren wollte
python
, rannte ich losAuf diese Weise kann Python2.7, falls es noch benötigt wird, explizit mit aufgerufen werden,
python2.7
während der einfache Aufrufpython
aufgrund der symbolischen Verknüpfung standardmäßig Python3 verwendet.Ich habe keine Bash-Level-Skripte, die python2.7 aufrufen,
python
so dass diese Änderung nicht störend wäre - während bei anderen Systemen die Skripte entsprechend angepasst werden müssten, wenn dies der Fall wäre.- Der "Python" -Befehl auf Unix-ähnlichen Systemen
Diese Antwort ist keine direkte Antwort auf OP, aber als jemand, der eine ähnliche Frage hatte, war dies die Funktionalität, nach der ich gesucht hatte, als ich daran dachte, 2.7 zu entfernen. Anstatt zu löschen, müssen Sie nur die Prioritäten festlegen, die Sie verwenden möchten
python
.quelle
/usr/bin/python
, während fast alle Skripte , die für Python 3 erstellt wurden, über die Änderung informiert sind undpython3
derzeit aufgerufen werden. Lettingpython
Punktpython2.7
ist weniger wahrscheinlich , dass die Dinge zu brechen.grep -r "/usr/bin/python" /usr/bin/
sollte Ihnen einen kurzen Überblick geben. Es wird wahrscheinlich Ihr System nicht deaktivieren, aber es kann dazu führen, dass einige Dinge nicht funktionieren. Zum Beispielsolaar
.