Python 3.10 rühmt sich, eine der stabilsten Versionen zu sein, die Benutzer herunterladen können, und wird noch in diesem Jahr veröffentlicht. Die neu veröffentlichte Version wird viele bemerkenswerte Änderungen mit sich bringen, wie zum Beispiel einfach zu bedienende Funktionen für Anfänger und erfahrene Programmierer.
Zu den eklatanten Verbesserungen in der neuen Python-Version gehört die Einführung von Strukturmustern Matching, bessere Fehlermeldungen, neue Union-Operatoren, genaue Zeilennummern zum Debuggen und vieles mehr mehr.
Folgendes müssen Sie über Python 3.10 wissen:
Struktureller Musterabgleich in Python 3.10
Structural Pattern Matching macht das Schreiben von Code zum Kinderspiel und ist weiterhin eines der herausragenden Highlights der neuesten Python-Version. Python zielt darauf ab, die bereits vorhandenen Match-Case-Anweisungen in den vorherigen Versionen der Programmiersprache zu verbessern. Es wurde eine Aktualisierung der vorhandenen Match-Case-Anweisungen in Python vorgenommen.
Werfen wir einen kurzen Blick auf die Implementierungen von Structural Pattern Matching:
Die match-case-Anweisung ist seit einiger Zeit Teil der Python-Sprache. Diese Anweisung wird im Wesentlichen verwendet, um die mühsame Arbeit des Schreibens der zu vermeiden ansonsten Aussage mehrfach.
Mit dieser Funktion im neuen Build können Sie mit Objekten mit ähnlichen Eigenschaften abgleichen.
match media_object:
Fallbild (type="jpg"):
# Zurückgeben wie es ist
Medien_Objekt zurückgeben
Fall Bild (type="png") | Bild (type="gif"):
return render_as (media_object, "jpg")
Fallvideo():
raise ValueError("Kann noch keine Frames aus dem Video extrahieren")
Fall anderer_Typ:
Ausnahme auslösen (f"Medientyp {media_object} kann noch nicht behandelt werden")
Die neue Python-Bibliothek erkennt Objekte wie JPG, GIF und Videos. Dieser Code kann nahtlos ausgeführt werden, ohne einen Fehler auszulösen.
2. Verbesserte Fehlermeldungen
Jeder Programmierer versteht wahrscheinlich die Bedeutung von Fehlern beim Schreiben von Code und wie ärgerlich einige Fehlertypen sein können. Die Vorgängerversionen von Python warfen Fehlermeldungen, sobald es Probleme in der Syntax gab. Diese können unter anderem an der falschen Syntax, fehlenden Schlüsselwörtern, falschen oder falsch geschriebenen Schlüsselwörtern liegen.
Diese Fehlermeldungen waren alles andere als perfekt, da es für Anfänger (manchmal sogar fortgeschrittene Benutzer) schwierig wurde, die wahre Ursache des Fehlers in ihren Codes zu identifizieren. Als Programmierer ist Google weiterhin Ihr Verbündeter bei der Entschlüsselung der Gründe für verschiedene Fehlermeldungen.
Zum Beispiel wissen viele Leute möglicherweise nicht, warum Python den folgenden Fehler ausgibt:
SyntaxError: unerwarteter EOF beim Parsen der Fehlermeldung.
Der Mangel an Klarheit in solchen Anweisungen veranlasste die neueste Python-Version, die bestehenden Fehlermeldungen zu verbessern.
Die älteren Meldungen wurden durch leicht verständliche Fehlermeldungen ersetzt wie:
{ war nie geschlossen unerwarteter EOF beim Parsen
Einige weitere Änderungen umfassen:
Attributfehler wie:
aus Sammlungen importieren namenstoplo
Das Modul 'Sammlungen' hat kein Attribut 'namedtoplo'. Meinten Sie: nametuple?
NameError-Nachrichten werden so geändert, dass sie wie folgt aussehen:
neue_var = 5
drucken (new_vr)>
NameError: Name 'new_vr' ist nicht definiert. Meinten Sie: new_var?
3. Kontextmanager in Klammern
Die neuen Context Manager in Klammern können Ihren Code eleganter aussehen lassen. Auch wenn es kein wichtiges Feature ist, kann es Ihren Code leicht weniger klobig machen. Diese Funktion ist von Vorteil, wenn Sie in einem Team arbeiten und Ihr Code strukturiert sein muss.
Stellen Sie sich vor, Sie schreiben eine Aussage wie:
mit open('file1.txt', 'r') als fin, open('file2.txt', 'w') als fout:
fout.write (fin.read())
Der obige Code funktioniert, aber die erste Zeile ist viel zu lang und sieht ungeschickt aus. Sie können die Zeile mit einem Backslash (\) und lassen Sie den Code strukturiert aussehen:
mit open('file1.txt', 'r') als fin, \ open('file2.txt', 'w') als fout: fout.write (fin.read())
Mit der Einführung des neuen Context-Managers in Klammern können Sie die Zeile auch mit Klammern umbrechen:
mit (open('file1.txt', 'r') als fin,
open('file2.txt', 'w') als fout):
fout.write (fin.read())
Verwandt: Python-Projektideen für Anfänger geeignet
4. Neuer Typ Union-Operator
Ein kleines, aber praktisches Feature in Python 3.10 ist der neue Typ des Union-Operators. Jede Python-Version enthält einen vordefinierten Satz von Typhinweisfunktionen.
Der Union-Operator enthält bedingte Logik; zum Beispiel, int oder schweben kann geschrieben werden als Vereinigung[X, Y]. Der neue Union-Operator kann wie folgt ausgedrückt werden int|float Auch.
Die Einführung eines neuen Union-Operanden in Python 3.10 ist zeitsparend und lässt den Code klar definiert aussehen.
Beispielsweise:
def f (x: int | float) -> float:
Rückgabe x * 3.142
f (1) # bestanden
f (1.5) # bestanden
f('str') # linter zeigt einen Anmerkungsfehler an
5. Präzise Zeilennummern für das Debugging
Sie haben vielleicht schon oft bemerkt, dass die Fehlerverfolgung Sie nicht in die richtige Zeile umleitet, in der ein Fehler aufgetreten ist. Dies erschwert das Debuggen für Programmierer, die gerade mit dem Schreiben von Code begonnen haben.
Die fehlerhafte Fehlersuche wird besonders beim Schreiben deutlich sys.settrace und verwandte Tools in Python. Die neuere Version verbessert dies deutlich, und Sie können im Fehlerfall genaue Zeilennummern sehen.
Um eine genauere Zeilennummer zu erreichen, verschiebt Python 3.10 seine Zuverlässigkeit von der aktuellen co_Inotab Attribut und verwendet die neue Methode co_lines() Attribut. Dieses Attribut funktioniert so, dass die f_lineo enthält immer die genaue Zeilennummer.
1. Pro (
2. x) in [1]:
3. passieren
4. Rückkehr
Verwandt: Debuggen Sie Ihren Python-Code
6. Verschobene Bewertung von Anmerkungen
In Python wird die Auswertung der Typannotation zum Zeitpunkt der Funktionsdefinition durchgeführt. Das bedeutet, dass Typanmerkungen zeilenweise von oben nach unten ausgewertet werden.
Auch wenn dies die beste Option zu sein scheint, gibt es bei diesem Ansatz immer noch zwei Probleme:
- Typhinweise beziehen sich auf Typen, die noch nicht definiert sind und nicht funktionieren; diese Hinweise müssen als Strings ausgedrückt werden.
- Die Modulimporte werden verlangsamt, da Typhinweise in Echtzeit ausgeführt werden.
Um Ausführungsprobleme zu vermeiden, werden Anmerkungen in _Anmerkungen_ und Auswertung wird gemeinsam durchgeführt. Dies ermöglicht eine Vorwärtsreferenzierung, da Modulimporte zuerst ausgeführt werden, wodurch die Initialisierungszeit verkürzt wird.
Arbeiten mit den neuesten Funktionen in Python 3.10
Die neueste Version von Python wird am 4. Oktober 2021 veröffentlicht; Es verspricht, die Fehler zu beheben, die in den vorhandenen Versionen vorhanden sind. Die folgenden Versionen werden die aktuelle Version 3.10 verbessern.
Structural Pattern Mapping ist das Highlight dieses neuen Updates und vereinfacht das Schreiben von Codes für ähnliche Objekte. Andere Funktionen wie Kontextmanager in Klammern und neue Unionsoperatoren zielen darauf ab, den Code einfacher und effizienter zu machen.
Nichtsdestotrotz gibt es in den bestehenden Python-Versionen einige ausgezeichnete Techniken zur Ausnahmebehandlung. Sie können die Funktionalitäten von Python gut nutzen.
Decken Sie Ihre Codierungsgrundlagen mit Python-Ausnahmen ab.
Weiter lesen
- Programmierung
- Programmierung
- Python
- Codierungstipps
Wini ist eine in Delhi ansässige Autorin mit 2 Jahren Schreiberfahrung. Während ihrer Schreibtätigkeit war sie mit Agenturen für digitales Marketing und technischen Firmen verbunden. Sie hat Inhalte zu Programmiersprachen, Cloud-Technologie, AWS, Machine Learning und vielem mehr geschrieben. In ihrer Freizeit malt sie gerne, verbringt Zeit mit ihrer Familie und reist, wann immer möglich, in die Berge.
Abonniere unseren Newsletter
Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!
Klicken Sie hier, um zu abonnieren