Python 3.0 mit zahlreichen Änderungen

Python 3.0 mit zahlreichen Änderungen

"Vergeßt alles, was über Unicode und Binärdaten zu wissen glaubt."

Britta Wülfing
04.12.2008 Die Entwickler der freien Programmiersprache Python haben offiziell die Version 3.0 zum Download freigegeben.

Die Version 3.0, die auch unter dem Namen Python 3000 oder Py3K bekannt ist, bringt zahlreiche Änderungen im Vergleich zur Vorgängerversion 2.6. Eine wesentliche Neuerung schicken die Entwickler in ihrer Auflistung voraus: Es ist die erste Version, die „absichtlich nicht rückwärtskompatibel“ ist. Eine Art Begründung liefert Guido van Rossum gleich nach: "Es gibt mehr Änderungen als in einer typischen Release, und mehr, die für alle Anwender wichtig sind." Lange bekannte Auswüchse und lästige Vorgehensweisen wären bereinigt worden, so die Entwickler, und eine Menge überflüssiger Code sei beseitigt worden. Auf einer eigens dafür eingerichteten Seite stellt das Projekt wesentliche Änderungen vor und listet zahlreiche Beispiele auf.

Neben zahlreichen Syntaxänderungen und Hinweisen zu Änderungen an den Libraries gibt es einige grundsätzliche Änderungen. Beispielsweise ist print() in Python 3 eine Funktion, nicht mehr ein „Print Statement“. Hierbei ersetzen Keyword-Argumente die meisten der bisherigen Syntax-Ausdrücke; auch hierzu gibt es zahlreiche Beispiele. Einige bekannte Schnittstellen (APIs) produzieren nicht mehr Listen, sondern Ansichten und Iteratoren. Einem Kapitel widmen die Entwickler umfangreiche Erklärungen, übertitelt mit „Text versus Daten statt Unicode versus 8-bit“. Hier heißt es: „Alles, was Du bisher über Binärdaten und Unicode zu wissen glaubtest, hat sich geändert.“ Die bisherige Philosophie habe sich entscheidend geändert, und als Konsequenz muss nach Überzeugung der Entwickler „ziemlich aller Code, der Unicode, Enkodierung oder Binärdaten nutzt, geändert werden.“ Das dies eine Änderung in die richtige Richtung darstellt, ist für das Projekt unstrittig, denn damit konnten zahlreiche Fehler behoben werden, die in den Versionen 2.x für Ärger sorgten.

Weil die Entwickler vermuten, dass zahlreiche Anwender direkt von Version 2.5 auf 3.0 aktualisieren, gibt es auf der Webseite eine eigene Abteilung mit Änderungen. Zusätzlich sollten die Betroffenen auch die Hinweise zur Version 2.6 lesen. Für die Portierung von Python-Quellcode von Version 2.5 oder 2.6 findet sich am Ende der Webseite eine genaue Anleitungsempfehlung. Die Autoren raten davon ab, Quellcode zu schreiben, der unverändert unter Python 2.6 und 3.0 gleichzeitig läuft und verweisen auf die Alternativempfehlung. Für die Portierung von C-Extensions nach Python 3 wurde eine eigene Webseite eingerichtet.

Ausführliche Informationen, eine Online-Dokumentation sowie Python 3 stehen in verschiedenen Varianten auf der Projektseite zum Download zur Verfügung.

Ähnliche Artikel

  • Neue Python-Version 3.2.1 verbessert Unicode-Support
    Benjamin Peterson hat gestern auf der Python-Entwicklerliste das neue Release vorgestellt. Durch ein in C neu geschriebenes I/O-System sorgt Python 3.2.1 auch für mehr Geschwindigkeit.
  • Python 3.1 erschienen
    Die neue Version soll stabiler und in einigen Teilen schneller laufen. Darüber hinaus wurden einige der mit Python 3.0 eingeführten Sprachelemente optimiert und erweitert. Mit den Ordered Dictionarys gibt es sogar eine neue Datenstruktur.
  • Unicode und Archivfunktion für die Groupware

    Pünktlich zum Partnertreffen Zarafa Summercamp hat der deutsch-holländische Groupwarehersteller eine neue Major Release seiner Kollaboration-Plattform veröffentlicht. Die bringt mehr Performance, Unicode und ein Archiv für Groupwaredaten mit.
  • Taskcoach führt Prerequisiten ein

    Taskcoach, eine freie GUI-Anwendung zur Aufgabenplanung, ist in Version 1.2.0 erhältlich.
  • Python 3.3.0 ist da

    Python ist in Version 3.3.0 erhältlich, die ein rundes Dutzend Python Enhancement Proposals (PEP) umsetzt.

Kommentare

Aktuelle Fragen

Zu wenig Speicherplatz auf /boot unter MATE
Patrick Obenauer, 25.05.2015 14:28, 1 Antworten
Hallo zusammen, ich habe Ubuntu 14.10 mit MATE 1.8.2 (3.16-37) mit Standardeinstellungen aufgese...
Konsole / Terminal in Linux Mint 17.1 deutsch
Dirk Resag, 09.05.2015 23:39, 12 Antworten
Hallo an die Community, ich habe vor kurzem ein älteres Notebook, Amilo A1650G, 1GB Arbeitsspe...
Admin Probleme mit Q4os
Thomas Weiss, 30.03.2015 20:27, 6 Antworten
Hallo Leute, ich habe zwei Fragen zu Q4os. Die Installation auf meinem Dell Latitude D600 verl...
eeepc 1005HA externer sound Ausgang geht nicht
Dieter Drewanz, 18.03.2015 15:00, 1 Antworten
Hallo LC, nach dem Update () funktioniert unter KDE der externe Soundausgang an der Klinkenbuc...
AceCad DigiMemo A 402
Dr. Ulrich Andree, 15.03.2015 17:38, 2 Antworten
Moin zusammen, ich habe mir den elektronischen Notizblock "AceCad DigiMemo A 402" zugelegt und m...