Welche Python-Versionen muss ich auf meinem Rechner haben?

370
Paweł Wójcik

Es ist bekannt, dass ich unter Linux python2.x verwenden sollte, um jedoch die neuesten Funktionen der Sprache zu nutzen, die ich auch haben möchte, und eine neue Version von Python verwenden. Damit sind bereits zwei Python-Versionen auf meinem Rechner vorhanden. Gibt es irgendwelche "Zwischenversionen" von Python, die für mein System erforderlich sind, um gut zu funktionieren?

Offenbar gibt es Situationen, in denen auf einem System mehr als eine alte Python-Version vorhanden ist . Welche der "alten" Versionen werden am meisten auf einer Maschine empfohlen?

0
Sie sollten die Versionen haben, die Sie verwenden. Sie sollten Python 2 nicht ohne Notwendigkeit verwenden, da es veraltet ist und laut Python-Kernteam im Jahr 2020 vollständig zurückgezogen werden wird. Wenn dies nicht erforderlich ist, verwenden Sie Python 3 Drako vor 5 Jahren 0
Beachten Sie, dass das Setup zumindest unter Ubuntu Python2 UND Python3 für wichtige Teile der Systemwerkzeuge (z. B. apt) verwendet. Versuchen Sie, Python2 oder Python3 zu entfernen, und Sie haben ein komplettes Durcheinander. Hannu vor 5 Jahren 0

1 Antwort auf die Frage

1
Austin Hemmelgarn

Erstens sollten Sie Python 2 nicht unter Linux blind haben. Viele Distributionen benötigen sie heutzutage nicht und installieren sie nur aus Kompatibilitätsgründen. Wenn das Betriebssystem bereits vorinstalliert war, behalten Sie es bei. Andernfalls sollten Sie es nicht installieren, es sei denn, Sie haben eine Software, die es tatsächlich benötigt. Einige Linux-Systeme haben es nicht mehr standardmäßig (zB Arch).

Installieren Sie darüber hinaus, wie in den Kommentaren vorgeschlagen, nur die Versionen, die Sie tatsächlich benötigen . Wenn Sie also keine Software verwenden, die die Python-Version XY verwendet und das Betriebssystem sie nicht automatisch installiert hat, haben Sie sie nicht auf Ihrem System installiert. Dieser Hinweis gilt im Allgemeinen für fast jede Programmiersprache. Mehr Code bedeutet mehr Möglichkeiten für einen Angreifer, um einen Fehler auszunutzen.

Bauen Sie auf diesen Rat mit einem realen Beispiel auf:

Auf meinen Gentoo-Systemen habe ich derzeit Python 2.7, 3.6 und 3.7.

  • Ich brauche Python 2.7, weil ich einige Pakete habe, die AsciiDoc für ihre Dokumentation benötigen, und die nur mit Python 2.7 funktioniert.
  • Ich brauche Python 3.6, da dies die Hauptversion ist, die von fast allen anderen Code auf meinem System unterstützt wird (und von den meisten Python-Paketen in Gentoo derzeit).
  • Ich brauche Python 3.7 für neue Entwicklungs- und Testzwecke.

Theoretisch könnte ich auch Python 3.4 und 3.5 auf diesen Systemen installiert haben, aber das ist nicht der Fall, da ich keine Null-Software habe, die beide benötigt.