Lists, Tuples und Dictionaries
In diesem Kapitel werden wir drei wesentliche Datentypen in Python kennenlernen: Listen, Tupel und Wörterbücher. Listen sind flexible, geordnete Sammlungen von Elementen, die verändert werden können, was sie ideal zum Speichern von Datensequenzen macht, bei denen es notwendig sein kann, Elemente hinzuzufügen, zu entfernen oder zu ändern. Tupel hingegen sind ähnlich wie Listen, aber unveränderlich, was bedeutet, dass ihr Inhalt nach der Erstellung nicht mehr geändert werden kann. Sie sind daher ideal, um feste Daten zu speichern, die nicht verändert werden sollten. Wörterbücher sind ungeordnete Sammlungen von Schlüssel-Wert-Paaren, die eine effiziente Datenabfrage durch die Verwendung von einzigartigen Schlüsseln ermöglichen, und sind perfekt geeignet, um strukturierte Daten darzustellen, wie etwa das Speichern von Attributen eines Objekts oder das Zuordnen von Werten. Zusammen bilden diese Datentypen grundlegende Werkzeuge zum Organisieren und Verwalten von Daten in Python.
TUPLE
TUPLE
In Python ist ein Tuple eine geordnete, unveränderliche Sammlung von Elementen, ähnlich einer Liste, jedoch mit einem wesentlichen Unterschied: Einmal erstellt, können die Elemente in einem Tuple nicht geändert werden (kein Hinzufügen, Entfernen oder Ändern von Elementen). Tuples sind nützlich, wenn Sie eine feste Sammlung von Elementen speichern möchten, die im Verlauf des Programms unverändert bleiben soll.
Erstellen eines Tuples
Ein Tuple wird erstellt, indem Werte in runde Klammern ()
gesetzt und durch Kommata getrennt werden. Ein Tuple kann Elemente verschiedener Datentypen enthalten, wie Ganzzahlen, Zeichenketten oder sogar andere Tuples.
# Erstellen von Tuples mit verschiedenen Datentypen
zahlen = (1, 2, 3)
fruechte = ("Apfel", "Banane", "Kirsche")
gemischt = (1, "Hallo", 3.14, True)
Um ein Tuple mit nur einem Element zu erstellen, muss nach dem Element ein Komma gesetzt werden, da Python Werte in Klammern ohne Komma als regulären Ausdruck behandelt.
Tuple mit einem Element:
einzelnes_element = (5,)
print(type(einzelnes_element)) # Ausgabe: <class 'tuple'>
Zugriff auf Tuple-Elemente
Wie bei Listen können die Elemente in einem Tuple mit einem Index abgerufen werden, wobei die Indexierung bei 0 beginnt.
fruechte = ("Apfel", "Banane", "Kirsche")
print(fruechte[1]) # Ausgabe: "Banane"
Tuple-Operationen
Da Tuples unveränderlich sind, unterstützen sie weniger Operationen als Listen. Einige gängige Operationen sind:
- Verkettung: Zwei Tuples können mit dem
+
Operator kombiniert werden. - Wiederholung: Sie können Elemente in einem Tuple mit dem
*
Operator wiederholen.
# Verkettung
tuple1 = (1, 2)
tuple2 = (3, 4)
kombiniert = tuple1 + tuple2
print(kombiniert) # Ausgabe: (1, 2, 3, 4)
# Wiederholung
wiederholt = tuple1 * 3
print(wiederholt) # Ausgabe: (1, 2, 1, 2, 1, 2)
Tuple-Slicing
Mit Slicing kann eine Teilmenge eines Tuples abgerufen werden, wie bei Listen.
zahlen = (10, 20, 30, 40, 50)
print(zahlen[1:4]) # Ausgabe: (20, 30, 40)
print(zahlen[:3]) # Ausgabe: (10, 20, 30)
Tuple-Methoden
Da Tuples unveränderlich sind, unterstützen sie nur zwei Methoden:
count()
: Gibt zurück, wie oft ein bestimmter Wert im Tuple vorkommt.index()
: Gibt den Index des ersten Vorkommens eines bestimmten Werts zurück.
fruechte = ("Apfel", "Banane", "Kirsche", "Apfel")
print(fruechte.count("Apfel")) # Ausgabe: 2
print(fruechte.index("Banane")) # Ausgabe: 1
Entpacken von Tuples
Sie können die Elemente eines Tuples in separate Variablen entpacken. Dies ist besonders nützlich, wenn mit Funktionen gearbeitet wird, die mehrere Werte in Form eines Tuples zurückgeben.
# Entpacken eines Tuples
dimensionen = (1920, 1080)
breite, hoehe = dimensionen
print("Breite:", breite) # Ausgabe: Breite: 1920
print("Höhe:", hoehe) # Ausgabe: Höhe: 1080
Anwendungsfälle für Tuples
- Unveränderliche Daten: Tuples sind ideal zum Speichern von Daten, die unverändert bleiben sollen, wie Konfigurationseinstellungen oder festgelegte Daten.
koordinaten = (40.7128, -74.0060)
print("Breitengrad:", koordinaten[0])
print("Längengrad:", koordinaten[1])
- Datenintegrität: Da Tuples nicht geändert werden können, werden sie oft verwendet, um Daten darzustellen, die während des gesamten Programms konstant bleiben sollen, um die Datenintegrität zu gewährleisten.
def get_student_data():
name = "Alice"
alter = 20
note = "A"
return name, alter, note
student = get_student_data()
print("Name:", student[0]) # Ausgabe: Name: Alice
print("Alter:", student[1]) # Ausgabe: Alter: 20
print("Note:", student[2]) # Ausgabe: Note: A
- Schlüssel in Dictionaries: Da Tuples unveränderlich sind, können sie als Schlüssel in Dictionaries verwendet werden (Listen nicht, da sie veränderlich sind).
orte = {
(40.7128, -74.0060): "New York",
(34.0522, -118.2437): "Los Angeles"
}
print(orte[(40.7128, -74.0060)]) # Ausgabe: "New York"
Zusammenfassung
- Tuples sind geordnete, unveränderliche Sammlungen in Python.
- Sie unterstützen grundlegende Operationen wie den Zugriff auf Elemente per Index, Slicing, Verkettung und Wiederholung.
- Tuples sind ideal zum Speichern von Daten, die konstant bleiben sollen, und können als Schlüssel in Dictionaries oder zur Rückgabe mehrerer Werte aus Funktionen verwendet werden.