„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Warum gibt es in Python kein Tupelverständnis?

Warum gibt es in Python kein Tupelverständnis?

Veröffentlicht am 21.01.2025
Durchsuche:147

Why are There No Tuple Comprehensions in Python?

Enthüllung des fehlenden Tupelverständnisses in Python

Im Bereich Python sind Listen- und Wörterbuchverständnisse allgegenwärtig und wandeln iterierbare Elemente nahtlos in maßgeschneiderte Listen um und Wörterbücher. Seltsamerweise scheint Tupeln ein dedizierter Verständnismechanismus zu fehlen, sodass Benutzer sich über dessen Fehlen wundern.

Unveränderlichkeit von Tupeln

Man könnte zunächst annehmen, dass die Unveränderlichkeit von Tupeln dies ausschließt Verständnis. Diese Theorie greift jedoch zu kurz, da andere unveränderliche Typen, wie z. B. Strings, gerne Verständnisse annehmen.

Historische Ursprünge

Der zugrunde liegende Grund ergibt sich aus einer historischen Entscheidung von Python Schöpfer. Als Generatorausdrücke (in Klammern gesetzte Ausdrücke, die Iteratoren erzeugen) eingeführt wurden, wurde es als unnötig erachtet, eine separate Syntax für das Tupelverständnis zu erstellen. Klammern waren bereits die gewählte Notation für Generatoren, und die Bereitstellung einer zusätzlichen Tupel-spezifischen Syntax hätte zu Redundanz geführt.

Generator-Ausdruck zur Rettung

Wenn das Fehlen von a Die Syntax des Tupelverständnisses stellt ein Hindernis dar, keine Angst! Python bietet eine Problemumgehung durch die Verwendung von Klammern zum Erstellen eines Generatorausdrucks:

tuple(i for i in (1, 2, 3))

Dieser Ausdruck ergibt ein Tupel, das enthält gewünschte Elemente.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3