Tupel¶
Tupel ähneln Listen, sind aber unveränderlich, d.h. sie
können nach ihrer Erstellung nicht mehr geändert werden. Die Operatoren (in
,
+
und *
) und eingebauten Funktionen (len
, max
und min
)
arbeiten mit ihnen auf die gleiche Weise wie mit Listen, da keine dieser
Funktionen das Original verändert. Die Index- und die Slice-Notation
funktionieren auf die gleiche Weise, um Elemente oder Slices zu erhalten, können
aber nicht zum Hinzufügen, Entfernen oder Ersetzen von Elementen verwendet
werden. Außerdem gibt es nur zwei Tupelmethoden: count
und index
. Ein
wichtiger Zweck von Tupeln ist die Verwendung als Schlüssel für Dictionaries.
Sie sind auch effizienter zu verwenden, wenn man keine Änderungsmöglichkeit
benötigt.
1()
2(1,)
3(1, 2, 3, 5)
4(1, "2.", 3.0, ["4a", "4b"], (5.1,5.2))
- Zeile 2
Ein Tupel mit einem Element benötigt ein Komma.
- Zeile 4
Ein Tupel kann, wie eine Liste, eine Mischung anderer Typen als Elemente enthalten, darunter beliebige Zahlen, Zeichenketten, Tupel, Listen, Dictionaries, Dateien und Funktionen.
Eine Liste kann mit Hilfe der eingebauten Funktion tuple
in ein Tupel
umgewandelt werden:
>>> x = [1, 2, 3, 5]
>>> tuple(x)
(1, 2, 3, 5)
Umgekehrt kann ein Tupel mit Hilfe der eingebauten Funktion list in eine Liste umgewandelt werden:
>>> x = (1, 2, 3, 4)
>>> list(x)
[1, 2, 3, 4]
Die Vorteile von Tupeln gegenüber Listen sind:
Tupel sind schneller als Listen.
Wenn ihr eine konstante Menge von Werten definieren und diese nur durchlaufen wollt, solltet ihr ein Tupel anstelle einer Liste verwenden.
Tupel können nicht verändert werden und sind daher schreibgeschützt.
Tupel können als Schlüssel in Dictionaries und Werte in Sets verwendet werden.
Zusammenfassung¶
Datentyp |
veränderlich |
geordnet |
indiziert |
Duplikate |
---|---|---|---|---|
Tuple |
❌ |
✅ |
✅ |
✅ |