Pythons großes Update: Python 3.7 ist da!

Python 3.7: Neue Major-Version veröffentlicht
Keine Kommentare

Mit Python 3.7 steht ein neues Major Release für die Programmiersprache bereit. Zu den neuen Features gehört eine Änderung der Syntax und Neuerungen an der Standardbibliothek.

Python 3.7 ist da. Dabei handelt es sich um ein Major Release, wie die Download-Seite zur neuen Version erklärt – Python versioniert also nicht semantisch. Macht aber nichts: Unabhängig von der Versionierungsstrategie bringt das Release zahlreiche neue Features mit, aber auch Breaking Changes. Das ist den Release Notes zu entnehmen, die die Highlights der neuen Version zusammenfassen.

Python 3.7: Neue Syntax-Features

Im Bereich der Sprachsyntax müssen Entwickler vor allem bei der Verwendung von async und await aufpassen, wenn sie zu Python 3.7 wechseln. Die Keywords sind nun reserviert für Coroutine Functions. Im Bereich der Syntax wurden außerdem zwei Probleme gelöst, die mit der Einführung von Type Hints auftraten. Bislang konnten Annotationen nur Namen verwenden, die bereits im aktuellen Scope verfügbar waren. Nun könnten auch vorwärts gerichtete Referenzen genutzt werden. Annotationen im Quellcode haben sich bisher außerdem negativ auf die Performance beim Starten von Python-Anwendungen ausgewirkt. Auch dieses Problem tritt nun nicht mehr auf. Für beide Fälle wurde zur Lösung mit einer aufgeschobenen Evaluation von Annotationen gearbeitet.

Im Bereich des Data Models gibt es gleich drei Neuerungen zu vermelden. Einerseits kann nun selbst definiert werden, wie auf Module Attribute zugegriffen wird. Außerdem unterstützt der Core CPython Interpreter nun typisierte Module und generische Typen. Daneben wurde in der Sprachspezifikation aufgenommen, dass der Mapping-Type Dictionary Keys in der Reihenfolge aufnimmt, in der sie eingegeben wurden. Auch wenn ein Key aktualisiert wird, bleibt die ursprüngliche Reihenfolge erhalten.

Performantere Standardbibliothek

Als signifikante Verbesserungen an der Standardbibliothek werden in den Release Notes zwei Neuerungen benannt. Dazu gehört, dass das asyncio-Modul nun deutlich preformanter und nutzerfreundlicher gestaltet worden sein soll. Die zweite Neuerung betrifft das time-Modul, das nun eine zeitliche Auflösung auf Ebene von Nanosekunden unterstützt.

Einen Überblick über diese und viele weiteren Neuerungen an Python 3.7 gibt Elvis Pranskevichus in den Release Notes zur neuen Version. Im Changelog kann außerdem die gesamte Liste der Änderungen zu Python 3.7 eingesehen werden.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -