Python 3.7: Was ist neu?

28.06.2018

Ein neues Major-Release von Python 3 wurde veröffentlicht. Das sind die wichtigsten neuen Features.

Mit Version 3.7 ist nach eineinhalb Jahren Entwicklungszeit ein neues Major-Release der Programmiersprache Python verfügbar. Gleichzeitig wurde auch ein Maintenance-Release von Python 3.6 veröffentlicht, das noch bis Ende 2018 Support erhält. Danach soll es für Python 3.6 noch bis zum Jahr 2021 Security-Fixes geben.

Ein herausragendes Feature in Python 3.7 sind die neuen Data-Klassen, die es erlauben, den bisher nötigen Initialisierungscode für Instanz-Variablen im Konstruktor wegzulassen. Er wird jetzt von der Python-Runtime automatisch im Hintergrund erzeugt. Damit das funktioniert, muss eine Klasse mit der Annotation "@dataclass" ausgezeichnet werden.

Die Auswertung von Annotations wurde in der Abarbeitung von Python-Scripts nach hinten verschoben. Dies löst zwei Probleme: einmal die ansonsten erhöhte Startup-Zeit von Python-Scripts, andererseits die bisher nicht vorhandene Möglichkeit, sich in Programmen auf im Quellcode noch nicht definierte Annotations zu beziehen.

Zwei Anpassungen kümmern sich um Locale-Einstellungenn respektive Zeichen-Encoding. Thread-Local Storage hat eine neue C-API bekommen, und einige neue Zeit-Funktionen besitzen jetzt Nanosekunden-Auflösung.

Die Aktualität der aus dem Quellcode in Bytecode compilierten .pyc-Files wird jetzt über Hashes ermittelt statt wie bisher über Datumsstempel in den Metadaten. Dies soll sicherstellen, dass Änderungen an den Quellcode-Files auch in jedem Fall zu neuem Bytecode führt.

Schließlich gibt es noch umfangreiche Änderungen im Bereich der asynchronen Programmierung: Hier sind "async" und "await" als neue Schlüsselwörter zu vermerken. Außerdem wurde das asyncio-Modul in vielfacher Hinsicht erweitert und optimiert.

Alle Änderungen sind in dem Dokument " What’s New In Python 3.7 " verzeichnet.

Ähnliche Artikel

comments powered by Disqus
Mehr zum Thema

Python setzt Qualitäts-Maßstäbe für Open Source

Bei einer Überprüfung des Quellcodes fällt das Python-Projekt durch besonders niedrige Fehlerraten auf. 

Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023