Python ist eine versatile und beliebte Programmiersprache. Es wird von Entwicklern wegen seiner Einfachheit und Lesbarkeit geliebt. Mit jeder neuen Model fügt Python Funktionen hinzu, um seinen Benutzern einen besseren Service zu bieten. Die neueste Model, Python 3.13.0, wurde am 7. Oktober 2024 veröffentlicht. Diese Model enthält viele neue Funktionen und Verbesserungen. Schauen wir uns die wichtigsten Updates in Python 3.13.0 an.
Erweiterter interaktiver Dolmetscher
Der interaktive Interpreter wurde aktualisiert, um mehrzeilige Bearbeitung und Farbausgabe zu ermöglichen. Dies macht es benutzerfreundlicher und optisch ansprechender, inspiriert von den Funktionen von PyPy. Diese Verbesserungen helfen Entwicklern, Code einfacher zu schreiben und zu debuggen.
Beispiel:
def greet(identify):
return f"Howdy, {identify}!"
print(greet("World"))
Ausgabe:
Experimenteller Free-Threaded-Construct-Modus
Python 3.13.0 führt einen experimentellen Modus ein, der die World Interpreter Lock (GIL) deaktiviert. Dadurch können mehrere Threads gleichzeitig ausgeführt werden. Diese Funktion ist in den Home windows- und macOS-Installationsprogrammen verfügbar. Es verbessert die Leistung von Multithread-Anwendungen und nutzt moderne Multi-Core-Prozessoren besser aus.
Beispiel:
import threading
def print_numbers():
for i in vary(5):
print(i)
threads = ()
for _ in vary(5):
thread = threading.Thread(goal=print_numbers)
threads.append(thread)
thread.begin()
for thread in threads:
thread.be part of()
Ausgabe:
Vorläufiger Simply-In-Time (JIT)-Compiler
Diese Model enthält einen experimentellen JIT-Compiler, der die Ausführung beschleunigen soll, indem er Teile des Codes während der Ausführung kompiliert.
Obwohl es sich noch im Anfangsstadium befindet, könnte diese Funktion in zukünftigen Versionen zu erheblichen Leistungssteigerungen führen und Python dabei helfen, besser mit Sprachen wie Java und C# zu konkurrieren.
Verbesserte locals()-Funktion
Das Verhalten der integrierten Funktion locals() wurde verfeinert, um beim Ändern der zurückgegebenen Zuordnung eine klar definierte Semantik bereitzustellen. Diese Verbesserung stellt sicher, dass Debugger konsistenter arbeiten können.
Diese Änderung hilft Entwicklern, indem sie ein vorhersehbares Verhalten bei der Interaktion mit lokalen Variablenzuordnungen gewährleistet.
Beispiel:
def example_function():
x = 10
y = 20
local_vars = locals()
local_vars('x') += 5 # Modify native variable
return x, y
print(example_function())
Ausgabe:
(10, 20)
Neue Speicherverwaltungsfunktionen
Python 3.13.0 enthält eine aktualisierte Model des mimalloc-Speicherzuweisers, der jetzt non-compulsory, aber standardmäßig aktiviert ist, sofern er von der Plattform unterstützt wird. Dieser Allokator hilft, die Speichernutzung zu reduzieren, insbesondere für Anwendungen, die umfangreiche Dokumentzeichenfolgen verwenden.
Die effiziente Speicherverwaltung trägt zu einer besseren Leistung und einem geringeren Speicherverbrauch in Anwendungen bei.
Beispiel:
def large_docstring_function():
"""It is a perform with a big docstring that's meant to reveal
how main indentation is stripped to avoid wasting reminiscence."""
cross
Aktualisiertes DBM-Modul
Das dbm-Modul verwendet beim Erstellen neuer Datenbankdateien jetzt standardmäßig das dbm.sqlite3-Backend, was seine Funktionalität und Zuverlässigkeit verbessert.
Diese Änderung vereinfacht die Verwendung des DBM-Moduls durch Nutzung der robusten Funktionen von SQLite.
Beispiel:
import dbm
with dbm.open('instance.db', 'c') as db:
db('key') = 'worth'
print(db('key')) # Output: worth
Ausgabe:
b 'worth'
Änderungen an der macOS-Unterstützung
Die unterstützte Mindestversion von macOS wurde von 10.9 auf 10.13 (Excessive Sierra) aktualisiert, was bedeutet, dass ältere macOS-Versionen nicht mehr unterstützt werden.
Diese Änderung ermöglicht es Entwicklern, sich auf moderne macOS-Funktionen und -Optimierungen zu konzentrieren und so die Kompatibilität mit aktuellen Systemen sicherzustellen.
Unterstützung für Tier-2- und Tier-3-Plattformen
Python 3.13.0 hat das WebAssembly System Interface (WASI) auf Tier-2-Unterstützung aktualisiert, während Emscripten nicht mehr offiziell unterstützt wird. Darüber hinaus werden iOS und Android jetzt als Tier-3-unterstützte Plattformen klassifiziert.
Diese Kategorisierung hilft Entwicklern zu verstehen, welches Maß an Unterstützung und Stabilität sie bei der Verwendung von Python auf verschiedenen Plattformen erwarten können.
Verbesserungen beim Tippen
Zu den neuen Funktionen im Typisierungsmodul gehören die Unterstützung von Typstandards in Typparametern, eine neue Annotation zur Typeingrenzung (typing.TypeIs) und eine Annotation zum Markieren von veralteten Elementen im Typsystem.
Diese Verbesserungen verbessern die Typhinweisfunktionen, machen Python robuster für die Typprüfung und verbessern die Klarheit des Codes.
Beispiel:
from typing import TypeVar, Record
T = TypeVar('T', certain=int)
def sum_numbers(numbers: Record(T)) -> T:
return sum(numbers)
print(sum_numbers((1, 2, 3)))
Ausgabe:
6
Abschreibungen und Entfernungen
Mit Python 3.13.0 werden viele veraltete Module entfernt, wie in PEP 594 beschrieben, mit dem Ziel, die Standardbibliothek zu optimieren. Module wie aifc, cgi und telnetlib wurden entfernt.
Diese Bereinigung reduziert die Aufblähung der Standardbibliothek und ermutigt Entwickler, modernere und effizientere Alternativen zu verwenden.
Wie aktualisiere ich Ihr Colab für Python 3.13.0?
- Überprüfen Sie Ihre aktuelle Python-Model: Um zu sehen, welche Model von Python Sie derzeit verwenden, führen Sie den folgenden Befehl aus:
!python --version
- Installieren Sie Python 3.13: Aktualisieren Sie Ihre Paketliste und installieren Sie Python 3.13 mit diesen Befehlen:
!sudo apt-get replace -y
!sudo apt-get set up python3.13
- Aktualisieren Sie Alternativen, um auf die neue Python-Model zu verweisen: Richten Sie das Alternativensystem so ein, dass es auf die neue Python-Model verweist:
!sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.12 1
!sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.13 2
- Überprüfen Sie die Python-Model erneut: Überprüfen Sie, ob das Improve erfolgreich battle, indem Sie Folgendes ausführen:
!python --version
Sie können mein Colab-Notizbuch ansehen Hier.
Wichtige Vergleiche: Python 3.12.0 vs. Python 3.13.0
Besonderheit | Python 3.12.0 | Python 3.13.0 |
Interaktiver Dolmetscher | Standarddolmetscher | Verbessert durch mehrzeilige Bearbeitung und Farbunterstützung |
GIL-Handhabung | Commonplace-GIL | Experimenteller Free-Thread-Construct-Modus |
Leistung | 5 % Gesamtverbesserung durch verschiedene Optimierungen | Einführung eines vorläufigen JIT zur Leistungssteigerung |
Speicherverwaltung | Standardmäßige Speicherverwaltung | Optionales Mimalloc enthalten, wodurch die Speichernutzung reduziert wird |
Fehlerberichterstattung | Erweiterte Fehlermeldungen | Weitere Verbesserungen bei Ausnahme-Tracebacks |
DBM-Modul | Commonplace-DBM-Funktionalität | Standardmäßig wird das dbm.sqlite3-Backend verwendet |
macOS-Unterstützung | Unterstützt macOS 10.9 und höher | Mindestunterstützung auf macOS 10.13 aktualisiert |
Plattformunterstützung | Standardplattformunterstützung | WASI ist Tier 2; iOS und Android sind Tier 3 |
Tippen | Neue Syntax für Typanmerkungen | Neue Typstandards, einschränkende Anmerkungen und veraltete Elemente |
Abschluss
Python 3.13.0 baut auf Python 3.12.0 auf. Es bringt viele Verbesserungen und neue Funktionen mit sich, die die Verwendung vereinfachen, die Leistung steigern und das Entwicklererlebnis verbessern. Zu den wichtigsten Updates gehören ein besserer interaktiver Interpreter, neue Threading-Optionen und eine frühe JIT-Kompilierung. Diese Änderungen zeigen, dass Python darauf abzielt, auch bei der Weiterentwicklung der Programmierung nützlich zu bleiben.