Wichtige Unterschiede Python 2 -> Python 3

Es gibt 1 Antwort in diesem Thema, welches 679 mal aufgerufen wurde. Der letzte Beitrag () ist von kokoloko.

  • Nur mal so zur Info ....

    • Python 2 und Python 3 nutzen Bibliotheken, die zum Teil zueinander inkompatibel sind
      Da Python 3 die zukünftige Standardversion von Python ist, werden viele neue Bibliotheken exklusiv für Python 3 entwickelt. Manche der für Python 2 entwickelten Bibliotheken wiederum funktionieren nicht mit Python 3. Es ist natürlich möglich, diese Bibliotheken zu konvertieren, aber da dies oft schwierig ist, ist es meist außerhalb der Möglichkeiten eines Python-Einsteigers.
    • Python 3 hat bessere Unterstützung für Unicode
      Alle Strings in Python 3 sind standardmäßig unicode-codiert. Python 2 nutzte hier noch die ASCII-Codierung und Unicode musste hier explizit mit einem „u“ angegeben werden.
      Dies ist wichtig, da Unicode deutlich vielfältiger ist als ASCII. Unicode unterstützt Zeichen aus nicht-arabischen Schriftarten, römische Zahlen, Symbole, Emojjis und vieles mehr.
      Wie du dir vielleicht denken kannst, bringt der Einsatz von Unicode insbesondere für internationalisierte Applikationen massive Vorteile.
    • Python 3 nutzt eine verbesserte Division von Integers
      Wenn man in Python 2 zwei Zahlen ohne Nachkommastellen definiert und die beiden durcheinander dividiert, wird das Ergebnis auf die nächste ganze Zahl gerundet. Als Beispiel schauen wir uns die Division von 7 durch 2 an. Schreiben wir in Python 2:
      summe = 7/2
      enthält die Variable sum die Zahl 2. Möchte man das richtige Ergebnis 3.5 erhalten, müsste man den Code anders schreiben:
      summe = 7.0/2.0
      Dies liegt daran, dass Python 2 den korrekten Datentyp des Ergebnisses erkennt. Python 3 dagegen erkennt, dass das Ergebnis als Float zu behandeln ist. Dies ist ein Beispiel dafür, wie Python 3 die Syntax intuitiver macht, was die Programmierung insbesondere für Einsteiger erleichtert.
    • Python 2 und Python 3 haben eine unterschiedliche Syntax für die print-Funktion
      Dieser Unterschied ist rein syntaktische und wird daher von vielen als trivial eingeschätzt. Dennoch ist es einer der größten und auffälligsten Unterschiede und wahrscheinlich einer, der dir am häufigsten begegnen wird.
      In Python 3 wurde die print-Anweisung durch eine print-Funktion ersetzt.
      Beispiel:
      print "5"
      ist valider Code in Python 2, führt aber zu einem Syntaxfehler in Python 3. Dort würde man
      print ("5")
      nutzen.

Schon gewusst…?

Wir suchen skilled Coder mit guten Kenntnissen in Python, Perl oder PHP! Wenn du in einem netten Team dabei sein möchtest, melde dich bei uns!