Checkmark on Circle.png

Tupel

Aus KGS-Wiki

Ein Tupel ist eine Art, mathematische Objekte zusammenzufassen. Im Gegensatz zur Menge dürfen Objekte dabei mehrfach vorkommen, die Reihenfolge der Elemente spielt eine Rolle und die Größe eines Tupels ist nicht veränderbar. Tupel werden in runden Klammern notiert:

Für die Informatik spielen Tupel insbesondere als Elemente von Relationen in Datenbanken eine Rolle.

Tupel in Python

Tupel sind auch als Datentyp in Python eingebaut. Genau wie in der Mathematik werden auch in Python Tupel in runden Klammern notiert:

tuple_mc_tupleface = (1, 2, 3)

Genau wie bei Listen kann auf die Elemente von Tupeln über Indizes in eckigen Klammern zugegriffen werden, allerdings nur zum Lesen:

tuple_mc_tupleface[0]
# ergibt 1
tuple_mc_tupleface[0] = 23
# ergibt einen TypeError

Alternativ kann auch die Methode des Sequence Unpacking genutzt werden und jedes Element eines Tupels einer Variablen zugewiesen werden:

a, b, c = tuple_mc_tupleface
# a = 1
# b = 2
# c = 3

Tatsächlich kann Sequence Unpacking auch bei Listen verwendet werden. Für den Einsatz mit Tupeln ist es aber besonders geeignet, weil beim Sequence Unpacking die Anzahl der angegebenen Variablen exakt mit der Anzahl der Elemente der Liste übereinstimmen muss. Bei Tupeln kann dies durch die feste Länge gewährleistet werden, bei Listen muss man vorsichtiger sein. Besonderheiten ergeben sich bei null- und einelementigen Tupeln. Diese werden wie folgt notiert:

empty_tuple = ()
singleton_tuple = (42,)
# Das Komma muss angegeben werden,
# weil (42) ein arithmetischer Ausdruck ist,
# der zur Zahl 42 ausgewertet wird.

Links