Hinweis: Obwohl JavaScript für diese Website nicht unbedingt erforderlich ist, werden Ihre Interaktionsmöglichkeiten mit den Inhalten eingeschränkt sein. Bitte aktivieren Sie JavaScript für das volle Erlebnis.

Python 3.12.0b1

Erscheinungsdatum: 22. Mai 2023

Dies ist eine Beta-Vorschau von Python 3.12

Python 3.12 befindet sich noch in der Entwicklung. Diese Version, 3.12.0b1, ist die erste von vier Beta-Release-Vorschauen für 3.12.

Beta-Release-Vorschauen sollen der breiteren Community die Möglichkeit geben, neue Funktionen und Fehlerbehebungen zu testen und ihre Projekte auf die Unterstützung der neuen Funktionsveröffentlichung vorzubereiten.

Wir raten dringend Maintainern von Drittanbieter-Python-Projekten, Python 3.12 zu testen während der Beta-Phase und gefundene Probleme so schnell wie möglich an den Python-Bugtracker zu melden. Obwohl die Veröffentlichung in der Beta-Phase voraussichtlich funktionsvollständig sein wird, ist es möglich, dass Funktionen bis zum Beginn der Release-Candidate-Phase (Montag, 31.07.2023) modifiziert oder in seltenen Fällen gelöscht werden. Unser Ziel ist es, nach Beta 4 keine ABI-Änderungen mehr zu haben und nach 3.12.0rc1, dem ersten Release Candidate, so wenige Code-Änderungen wie möglich. Um dies zu erreichen, wird es während der Beta-Phase äußerst wichtig sein, so viel Exposition für 3.12 wie möglich zu erhalten.

Bitte beachten Sie, dass dies eine Vorschau-Version ist und deren Verwendung für Produktionsumgebungen nicht empfohlen wird.

Hauptneuerungen der Serie 3.12 im Vergleich zu 3.11

Einige der neuen Hauptmerkmale und Änderungen in Python 3.12 sind:

  • Neue Syntax für Typ-Annotationen für generische Klassen (PEP 695).
  • Flexibleres Parsen von f-Strings, das vieles erlaubt, was bisher nicht erlaubt war (PEP 701).
  • Noch verbesserte Fehlermeldungen. Mehr Ausnahmen, die potenziell durch Tippfehler verursacht werden, machen dem Benutzer nun Vorschläge.
  • Viele große und kleine Leistungsverbesserungen (wie PEP 709).
  • Unterstützung für den Linux perf-Profiler zur Meldung von Python-Funktionsnamen in Spuren.
  • Die veralteten Member wstr und wstr_length der C-Implementierung von Unicode-Objekten wurden entfernt, gemäß PEP 623.
  • Im Modul unittest wurden eine Reihe von lange veralteten Methoden und Klassen entfernt. (Sie waren seit Python 3.1 oder 3.2 veraltet.)
  • Die veralteten Module smtpd und distutils wurden entfernt (siehe PEP 594 und PEP 632. Das Paket setuptools (standardmäßig in virtuellen Umgebungen und an vielen anderen Orten installiert) stellt weiterhin das Modul distutils bereit.
  • Eine Reihe weiterer alter, fehlerhafter und veralteter Funktionen, Klassen und Methoden wurden entfernt.
  • Ungültige Backslash-Escape-Sequenzen in Zeichenketten warnen nun mit SyntaxWarning anstelle von DeprecationWarning, wodurch sie besser sichtbar werden. (Sie werden in Zukunft zu Syntaxfehlern.)
  • Die interne Darstellung von ganzen Zahlen wurde zur Vorbereitung auf Leistungsverbesserungen geändert. (Dies sollte die meisten Benutzer nicht beeinträchtigen, da es sich um ein internes Detail handelt, es kann jedoch Probleme für von Cython generierten Code verursachen.)
  • (Hallo, lieber Core-Entwickler, falls ein für Sie wichtiges Feature in dieser Liste fehlt, informieren Sie Thomas.)

Weitere Details zu den Änderungen in Python 3.12 finden Sie unter What's new in Python 3.12. Die nächste Vorabversion von Python 3.12 wird 3.12.0b2 sein, die derzeit für den 29.05.2023 geplant ist.

Weitere Ressourcen

Und nun etwas völlig anderes

Da die erste Beta-Version den Zeitpunkt markiert, an dem wir den Release-Zweig vom Hauptentwicklungszweig abspalten, hier ein Gedicht über Weggabelungen.

Two roads diverged in a yellow wood,
And sorry I could not travel both
And be one traveler, long I stood
And looked down one as far as I could
To where it bent in the undergrowth;

Then took the other, as just as fair,
And having perhaps the better claim,
Because it was grassy and wanted wear;
Though as for that the passing there
Had worn them really about the same,

And both that morning equally lay
In leaves, no step had trodden black.
Oh, I kept the first for another day!
Yet knowing how way leads on to way,
I doubted if I should ever come back.

I shall be telling this with a sigh
Somewhere ages and ages hence:
Two roads diverged in a wood, and I I took the one less traveled by,
And that has made all the difference.

Der Weg, den ich nicht nahm, von Robert Frost.

Dateien

Version Betriebssystem Beschreibung MD5 Summe Dateigröße Sigstore GPG
Gzip-komprimiertes Quell-Tarball Quellcode-Veröffentlichung 3b238c6ad8e78ca5976e2b886f022ba5 25,4 MB .sigstore SIG
XZ-komprimierter Quell-Tarball Quellcode-Veröffentlichung 859c31013d05bbd613eea39cdebdaf19 19,1 MB .sigstore SIG
macOS 64-Bit Universal2-Installer macOS für macOS 10.9 und neuer 7191413092c47af5e9c9bfe27064f32f 41,8 MB .sigstore SIG
Windows-Installer (64-Bit) Windows Empfohlen d660b15757c5b668f9f6e3fbedb485c1 24,5 MB .sigstore SIG
Windows-Installer (32-Bit) Windows 3a893f91ecf90b5e21227197030d53d9 23,3 MB .sigstore SIG
Windows-Installer (ARM64) Windows Experimentell 7423739e6aac4c4058d0f0514896e5fc 23,7 MB .sigstore SIG
Windows einbettbares Paket (64-Bit) Windows a33f890d3f7f7a6bf82932c50304de2f 9,9 MB .sigstore SIG
Windows einbettbares Paket (32-Bit) Windows a17db347993eca977e9dca827d6556fe 8,9 MB .sigstore SIG
Windows einbettbares Paket (ARM64) Windows 7553a104f5e8390a6d0680c3e24f1b08 9,3 MB .sigstore SIG