Erfahren Sie mehr über die aufregenden Funktionen in Python 3.12, die Ihnen das Leben als Entwickler erleichtern werden.

Python plant, Version 3.12 der Sprache im Oktober 2023 zu veröffentlichen. Diese Version bietet eine Reihe spannender Funktionen und Verbesserungen. Ziel ist es, Ihr Programmiererlebnis durch die Bereitstellung einer effizienteren und leistungsfähigeren Plattform zu verbessern, die es Ihnen ermöglicht, Ihre Programmierkenntnisse zu verbessern.

1. Erweiterte Fehlermeldungen

Python hat in den letzten Versionen seine Fehlermeldungen kontinuierlich verbessert. Der Mit der Version 3.11 wurden genauere Fehlermeldungen eingeführt durch Angabe der genauen Positionen innerhalb der Zeilen.

Python 3.12 bringt diese Verbesserungen mit den folgenden Ergänzungen auf die nächste Stufe:

  • Vorschläge für fehlende Module („Haben Sie vergessen, X zu importieren?“) umfassen jetzt Module aus der Standardbibliothek.
  • Verbesserte Fehlervorschläge für häufige Syntaxfehler im Zusammenhang mit Importen. Zum Beispiel, wenn ja
    instagram viewer
    p aus m importieren In Ihrem Code wird eine Fehlermeldung angezeigt, in der Sie gefragt werden, ob Sie schreiben möchten von m import p.
  • Importfehler für ein bestimmtes Modul enthalten jetzt Vorschläge aus dem Namespace des importierten Moduls.
  • Namensfehler Vorschläge jetzt auch einbeziehen selbst wird dem Namen hinzugefügt, wenn es innerhalb einer Klasseninstanz aufgerufen wird. Wenn zum Beispiel der Name Geschwindigkeit nicht definiert ist, schlägt die Fehlermeldung vor Selbstgeschwindigkeit als mögliche Korrektur. Dies ist besonders nützlich, da es weggelassen wird selbst Beispielsweise sind Variablen eine häufige Fehlerquelle in Klasseninstanzen.

2. Unterstützung für den Linux Perf Profiler

Das weit verbreitete Linux-Profiler-Tool, perf, kann jetzt mit Python 3.12-Programmen arbeiten. In der Vergangenheit konzentrierte es sich nur auf die Verfolgung von C-Level-Operationen innerhalb der Python-Laufzeit.

Mit Python 3.12 können Sie nun perf aktivieren, um auch Details zu Python-Programmen zu sammeln. Sie können es entweder auf Umgebungsebene oder innerhalb eines Python-Programms mit aktivieren sys.activate_stack_trampoline Funktion.

3. Verbesserungen der Typhinweise

Seit seiner Einführung in Python 3.5 ermöglicht die Typhinweissyntax von Python Linting-Tools, eine Vielzahl von Fehlern im Voraus zu erkennen. Mit jeder nachfolgenden Version hat sich das Typsystem von Python weiterentwickelt, um ein breiteres Spektrum an Anwendungsfällen abzudecken und verbesserte Typisierungsfunktionen zu bieten.

TypedDict

Python 3.12 führt das ein Verwendung von TypedDicts als Quelle für Hinweise auf Schlüsselwortargumente in Funktionen. Dabei wird das generische Unpack variadic verwendet, das mit Version 3.11 eingeführt wurde.

Hier ist ein Beispiel, das diese Funktion veranschaulicht:

KlasseFilm(TypedDict):
Name: str
Jahr: int

deffoo(**kwargs: Auspacken[Film]) -> Keiner: ...

In diesem Fall die Funktion foo kann Schlüsselwortargumente mit Namen und Typen empfangen, die mit dem Inhalt des Movie TypedDict übereinstimmen: Name vom Typ str Und Jahr vom Typ int.

Diese Verbesserung erweist sich als wertvoll, wenn es um Typhinweisfunktionen geht, die optionale Nur-Schlüsselwort-Argumente ohne Standardwerte akzeptieren.

Geben Sie Parametersyntax ein

Python 3.12 führt eine prägnantere Syntax zum Angeben von Typen in generischen Klassen, Funktionen oder Typaliasen ein.

Folgendes berücksichtigen:

# die alte Methode
aus Tippen importieren TypVar
_T = TypeVar("_T")
defFunktion(a: _T, b: _T) -> _T:
...
# die neue Typparametermethode
defFunktion[T](a: T, b: T) -> T:
...

Mit der neuen Syntax ist kein expliziter Import von TypeVar erforderlich. Stattdessen können Sie die verwenden func[T] Syntax zur Angabe generischer Typverweise. Es ist auch möglich, Typgrenzen zu definieren, z. B. die Angabe, dass ein Typ zu einer Gruppe von Typen gehören muss. Allerdings können diese Typen selbst nicht generisch sein. Ein Beispiel für diese Syntax ist func[T: (str, int)].

4. Müllabfuhr

In Python 3.12 ist die Garbage Collection (GC)-Mechanismus hat sich verändert. Zuvor wurde der GC immer dann ausgeführt, wenn ein Objekt zugewiesen wurde.

Ab Python 3.12 arbeitet der GC jedoch ausschließlich innerhalb von Bewertungsschalter Mechanismus in der Python-Bytecode-Schleife. Mit anderen Worten, es läuft zwischen der Ausführung eines Bytecodes und dem nächsten.

Darüber hinaus wird der GC auch ausgelöst, wenn der Signalhandler-Überprüfungsmechanismus von CPython aufgerufen wird. Diese Anpassung ermöglicht die regelmäßige Speicherbereinigung bei lang andauernden Aufrufen von C-Erweiterungen außerhalb der Laufzeit.

Enthüllung von Python 3.12

Python 3.12 führt eine Reihe spannender Funktionen und Verbesserungen ein und revolutioniert das Programmiererlebnis für Sie. Mit erweiterten Fehlermeldungen, verbesserten Eingabefunktionen, Unterstützung für den Linux Perf Profiler und Durch die optimierte Garbage Collection stattet Sie Python 3.12 mit den Tools aus, mit denen Sie hochwertigen Code schreiben können effizient. Nutzen Sie die Leistungsfähigkeit von Python und steigern Sie Ihre Programmierkenntnisse auf ein neues Niveau.