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 liegt in 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, indem es Klammern verwendet, um einen Generatorausdruck zu erstellen:
<code class="python">tuple(i for i in (1, 2, 3))</code>
Dieser Ausdruck ergibt ein Tupel, das die gewünschten Elemente enthält.
Das obige ist der detaillierte Inhalt vonWarum gibt es in Python kein Tupelverständnis?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!