Skip to main content

Lists, Tuples und Dictionaries

Completion requirements

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:

  1. Verkettung: Zwei Tuples können mit dem + Operator kombiniert werden.
  2. 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.