Python Tutorial - Datentyp-Tupel

Jinku Hu 30 Januar 2023
  1. Vorteile von Tupel gegenüber Liste
  2. Tupel erstellen
  3. Zugriff auf Tupel-Elemente
  4. Python Tupel Methoden
  5. Tupel eingebaute Funktionen:
  6. Tupel-Mitgliedschaftsprüfung
  7. Iterieren durch ein Tupel
Python Tutorial - Datentyp-Tupel

In diesem Abschnitt stellen wir vor, wie man Tupel erstellt und verwendet.

Ein Tupel ist ähnlich wie eine Liste mit dem Unterschied, dass das Tupel unveränderlich ist, die Liste aber veränderbar ist.

Vorteile von Tupel gegenüber Liste

  1. Tupel werden meist verwendet, wenn die Elemente unterschiedliche Datentypen haben, während Listen verwendet werden, wenn die Elemente vom gleichen Datentyp sind.
  2. Das Durchlaufen von Tupeln ist schneller, da man ein Tupel nicht aktualisieren kann.
  3. Sie können die unveränderlichen Elemente des Tupels als Schlüssel im Dictionary verwenden. Dies kann nicht mit einer Liste geschehen.
  4. Tupel garantieren den Schutz der Daten, da sie unveränderlich sind.

Tupel erstellen

Sie können ein Python-Tupel mit der Klammer () definieren und Elemente mit den Kommas , trennen. Ein Tupel kann Elemente von jedem Datentyp haben.

>>> x = (3, 'pink', 3+8j)
>>> print('x[0] =', x[0])
x[0] = 3
>>> print('x[0:2] =', x[0:2])
x[0:2] = (3, 'pink')
>>> x[0] = 4
TypeError: 'tuple' object does not support item assignment

Wenn das Tupel nur ein Element enthält, z.B. wenn das Element vom Datentyp String ist, dann wird das Tupel nicht als Tupel, sondern als String betrachtet. Siehe das folgende Beispiel:

>>> x = ("Python")
>>> print(type(x))
<class 'str'>

Man kann hier sehen, dass der Datentyp von x eher str als tuple ist. Um es zu einem Tupel zu machen, wird ein abschließendes Komma als Tupel verwendet:

>>> x = "Python",
>>> print(type(x))
<class 'tuple'>

Zugriff auf Tupel-Elemente

Auf die Elemente des Tupels kann auf eine der folgenden Arten zugegriffen werden:

Index

Ein Indexoperator [] kann verwendet werden, um auf Elemente eines Tupels zuzugreifen. Der Index des Tupels beginnt bei 0. Wenn der Index nicht im Bereich liegt (Element, das nicht an diesem Index im Tupel definiert ist), hat man einen IndexError. Es sollte hier beachtet werden, dass der Index ein Integer sein muss, sonst wird ein TypeError auftreten.

>>> x = (3, 'pink', 3+8j)
>>> print(x[0])
3
>>> print(x[2])
(3+8j)

Negativer Index

Genau wie bei Python list können Sie negative Indizes verwenden, um auf Tupelelemente zuzugreifen.

>>> l = (2, 4, 6, 8, 10)
>>> print(l[-1])
10
>>> print(l[-2])
8
>>> print(l[-3])
6

Slice

Ein Slicing-Operator : wird verwendet, um einen Bereich von Elementen aus einem Tupel zu extrahieren.

>>> l = (2, 4, 6, 8, 10)
>>> print(l[1:3])		#prints from location 1 to 3
(4, 6)
>>> print(l[:2])		#prints from the beginning to location 2
(2, 4)
>>> print(l[2:])		#prints elements from location 2 onwards
(6, 8, 10)
>>> print(l[:])		#prints entire list
(2, 4, 6, 8, 10)

Verkettete Tupel

Zwei Tupel können durch die Verwendung des + Operators verkettet werden.

>>> l = (2, 4, 6, 8, 10)
>>> print(l + (12, 14, 16)
(2, 4, 6, 8, 10, 12, 14, 16)

Löschen eines Tupels

Die Elemente eines Tupels können nicht gelöscht werden, da Tupel unveränderlich sind. Aber Sie können das gesamte Tupel mit dem del Schlüsselwort löschen:

l = (2, 4, 6, 8, 10)
del l

Python Tupel Methoden

Tupel haben nur zwei Methoden, da Tupel unveränderlich sind:

Methoden Beschreibung
count(a) wird verwendet, um die Anzahl der Elemente gleich a zurückzugeben.
index(a) wird verwendet, um den Index des ersten Elements gleich a zurückzugeben.

Tupel eingebaute Funktionen:

Unten sind Tupel eingebaute Funktionen, die auf Tupel anwendbar sind, um verschiedene Aufgaben auszuführen:

Funktionen: Beschreibung
all() geben True zurück, wenn alle Elemente des Tupels True sind. Es gibt auch True zurueck, wenn das Tupel leer ist.
any() geben True zurück, wenn eines der Elemente des Tupels True ist. Es gibt False zurueck, wenn das Tupel leer ist.
enumerate() gibt den Index und den Wert aller Elemente des Tupels als Tupel zurück. Es gibt ein enumerate Objekt zurück.
len() gibt die Anzahl der Elemente in einem Tupel oder die Länge des Tupels zurück.
tupel() eine Sequenz (Tupel, Set, String, Dictionary) in Tupel umwandeln.
max() gibt die maximale Anzahl im Tupel zurück.
min() gibt die minimale Anzahl im Tupel zurück.
sorted() ein sortiertes Tupel zurückgeben.
sum() liefert die Summe aller Elemente des Tupels.

Tupel-Mitgliedschaftsprüfung

Das in Schlüsselwort prüft, ob ein Element ein Mitglied des Tupels ist oder nicht. Siehe das Codebeispiel unten:

>>> l = (2, 4, 6, 8, 10)
>>> print(5 in l)
False
>>> print(2 in l
True

Iterieren durch ein Tupel

Sie können durch ein Tupel iterieren, indem Sie for loop verwenden:

l = (2, 4, 6, 8, 10)
for i in l:
    print(i)
2
4
6
8
10
Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook