CodeGym /Kurse /Python SELF DE /Tuples (Körbe)

Tuples (Körbe)

Python SELF DE
Level 8 , Lektion 1
Verfügbar

10.1 Tuple und seine Eigenschaften

Tuples gehören zu den vier eingebauten Collection-Typen in Python.

Wie du bereits weißt, gibt es in Python mehrere eingebaute Datentypen, die das Speichern von Objektgruppen ermöglichen. Das sind list – Liste, tuple – Tuple, set – Set, dictionary – Dictionary. Heute betrachten wir den zweiten und einen der einfachsten davon – das Tuple.

Ein Tuple (tuple) ermöglicht das Speichern mehrerer Elemente. Jedes Element hat eine eigene Reihenfolgenummer, was das Tuple geordnet macht – ordered. Darin ähnelt es einer Liste.

Ein Tuple kann nicht verändert werden – einmal erstellt, bleibt es unverändert, was es ideal macht, um Daten zu speichern, die sich im Programm nicht ändern sollen. Deshalb ist seine zweite Eigenschaft – Unveränderlichkeit (immutable).

Was Duplikate betrifft – in einem Tuple können gleiche Elemente mehrmals gespeichert werden – allow duplicates. Erneut, sehr ähnlich zu einer Liste.

Nützlich. Man kann von einem Tuple als einer unveränderlichen Liste denken, die anstelle von eckigen Klammern [] runde () verwendet.

10.2 Erstellung eines Tuples

Tuples sind unveränderliche Sequenzen von Elementen, die auf verschiedene Arten erstellt werden können. Hier sind die häufigsten:

Direkte Deklaration:

Tuples können direkt mit runden Klammern () und Kommata zur Trennung der Elemente erstellt werden.


tuple1 = (1, 2, 3)
tuple2 = ("apple", "banana", "cherry", "apple", "cherry")
tuple3 = (1, "apple", True)

Ohne Klammern:

Python erlaubt das Erstellen von Tuples ohne Klammern, indem die Elemente einfach durch Kommas getrennt werden.


tuple1 = 1, 2, 3
tuple2 = "apple", "banana", "cherry", "apple", "cherry"
tuple3 = 1, "apple", True

Tuple mit einem Element:

Um ein Tuple mit einem einzigen Element zu erstellen, muss ein Komma nach diesem Element gesetzt werden.


tuple1 = (1,)
tuple2 = ("apple",)
tuple3 = (True,)

Verwendung von tuple():

Die Funktion tuple() wandelt ein iterierbares Objekt in ein Tuple um. Das kann eine Liste, ein String oder jedes andere iterierbare Objekt sein.


list_to_tuple = tuple([1, 2, 3])

10.3 Entpacken von Tuple-Elementen

Beim Arbeiten mit Tuples kann man mehrere Elemente in einem Tuple verpacken oder ein Tuple in mehrere Variablen entpacken, was den Code vereinfacht:

Grundlegendes Entpacken

Beispiel für das Entpacken eines Tuples in Variablen:


my_tuple = (1, 2, 3)
x, y, z = my_tuple

Hier erhalten die Variablen x, y und z die Werte 1, 2 und 3 entsprechend.

Erweitertes Entpacken

Python unterstützt auch erweitertes Entpacken, das es ermöglicht, Teile eines Tuples in eine Liste zu extrahieren, indem das *-Symbol verwendet wird:


a, *b, c = (1, 2, 3, 4, 5)  # a = 1, b = [2, 3, 4], c = 5

In diesem Beispiel erhalten a und c die ersten und letzten Werte, während b zu einer Liste mit allen anderen Werten wird.

Anwendung in Funktionen

Das Entpacken von Tuples wird häufig beim Übergeben von Parametern in Funktionen verwendet. Dies ist besonders praktisch, wenn eine Funktion eine variable Anzahl von Argumenten akzeptiert oder wenn die Argumente vorher in Tuples oder Listen gepackt worden sind:


def func(a, b, c):
    print(a, b, c)
        
values = (1, 2, 3)
func(*values)

Besonderheiten der Verwendung

Das Entpacken von Tuples erfordert eine genaue Übereinstimmung der Anzahl der Tuple-Elemente mit der Anzahl der Variablen, denen sie zugewiesen werden, ansonsten wird ein Fehler erzeugt. Die Verwendung von * zum Sammeln überschüssiger Elemente ermöglicht es, diesen Fehler zu vermeiden und macht den Code flexibler gegenüber Änderungen der Daten.

10.4 Methodenliste

Tuples sind unveränderliche Objekte, deshalb haben sie fast keine eigenen Methoden. Nur zwei 😊

Die Funktion count(x):

Gibt die Anzahl zurück, wie oft x im Tuple vorkommt. Das ist nützlich, um die Anzahl bestimmter Elemente zu zählen.


t = (1, 2, 3, 2, 4, 2)
print(t.count(2)) # Gibt 3 aus 

Die Funktion index(x):

Gibt den Index der ersten Vorkommen des Elements x im Tuple zurück. Wenn das Element nicht gefunden wird, wird eine ValueError Ausnahme ausgelöst.


t = (1, 2, 3, 2, 4, 2)
print(t.index(3)) # Gibt 2 aus 

Obwohl dies alle Methoden der Tuple-Klasse sind, bedeutet das nicht, dass man damit nichts machen kann. Man kann, nur wird es ein bisschen komplizierter.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION