Python: Tupel
► Python-Dokumentation: Sequence Types
Tupel sind Feldvariablen (Arrays), die wie Listen eine Gruppe von Werten beliebigen Typs speichern können. Die Werte eines Tupels lassen sich aber nachträglich nicht mehr ändern. Tupel werden von runden Klammern () umschlossen. Die einzelnen Elemente eines Tupels werden über den fortlaufenden Index angesprochen, wobei das erste Element den Index 0 besitzt.
a = ("Hans", "Meier", 34, True)
print(a)
print(a[1])
print(type(a))
print(type(a[1]))
a[2] = 35 # Der Versuch einer Wertzuweisung führt zu einem TypeError.
print(a)
Elemente eines Tupels ausgeben
► Python-Dokumentation: for
Mit for/in (s. Schleifen) können alle Elemente eines Tupels ausgegeben werden:
a = ("A", "B", "C", "a", "b", "c")
for e in a:
print(e)
Tupel in Elemente zerlegen
► Python-Dokumentation: Common Sequence Operations
Die Anzahl der Elemente eines Tupels lässt sich wie bei Strings, Listen und Dictionarys mit der Funktion len() ermitteln. Tupel können wie Strings und Listen in ihre Bestandteile zerlegt werden.
a = ("Hallo", 5, True, False, -8, "Welt!")
print(len(a))
print(a[3]) # Gibt das Element an Position 3 aus.
print(a[2:4]) # Es werden die Elemente mit dem Index 2 bis ausschließlich Index 4 ausgegeben.
print(a[:3]) # Es werden die Elemente vom Anfang des Feldes bis ausschließlich Index 3 ausgegeben.
print(a[1:]) # Es werden die Elemente mit dem Index 1 bis zum Ende des Feldes ausgegeben.
print(a[-5:]) # Es werden die letzten 5 Elemente ausgegeben.
Vorkommen von Elementen ermitteln
► Python-Dokumentation: if
Mit if/in (s. Bedingungen) kann geprüft werden, ob sich ein bestimmtes Element in einem Tupel befindet:
a = ("A", "B", "C", "a", "b", "c")
if "d" in a:
print("\"d\" ist enthalten.")
else: # gleichbedeutend mit: if "d" not in a
print("\"d\" ist nicht enthalten.")
► Python-Dokumentation: Common Sequence Operations
Mit der Funktion count() lässt sich die Anzahl gesuchter Elemente innerhalb von Tupeln (wie bei Strings und Listen) ermitteln.
a = ("Hallo", 5, True, False, True, -8, "Welt!")
print(a.count("Welt!"))
print(a.count("x"))
print(a.count(True))
Index eines Elements bestimmen
► Python-Dokumentation: Common Sequence Operations
Um den Index eines gesuchten Elements innerhalb eines Tupels (oder einer Liste) zu ermitteln, wird die Funktion index() verwendet.
a = ("a", 5, True)
print(a.index("a"))
print(a.index(7)) # Die Suche nach einem nicht vorhandenen Index führt zu einem ValueError.
Kleinstes bzw. größtes Element finden
► Python-Dokumentation: min max
Mit Hilfe der Funktionen min() bzw. max() ist es möglich, das Element eines Tupels mit dem niedrigsten bzw. höchsten Wert zu ermitteln. Dies ist vor allem bei numerischen Werten sinnvoll, kann aber auch beispielsweise auf Strings angewendet werden, bei denen die Position der Elemente bei alphabetischer Sortierung des Tupels als Kriterium herangezogen wird.
a = (1028, 256, -42, 4711)
print(min(a))
print(max(a))
b = ("Schulze", "Schmidt", "Müller", "Meier")
print(min(b))
print(max(b))
Elemente addieren
► Python-Dokumentation: sum
Mit Hilfe der Funktion sum() können die einzelnen Elemente eines Tupels addiert werden, sofern es sich bei ihnen um Zahlen handelt. Ansonsten erzeugt diese Funktion einen TypeError.
a = (1028, 256, -42, 4711)
print(sum(a))