Zum Hauptinhalt

Lists, Tuples und Dictionaries

Abschlussbedingungen

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.

 

List

In Python ist eine Liste eine Datenstruktur, die eine geordnete Sammlung von Elementen speichern kann. Diese Elemente können jeden Datentyp haben, wie z. B. Ganzzahlen, Zeichenketten oder sogar andere Listen. Listen gehören zu den am häufigsten verwendeten Datentypen in Python, da sie flexibel und einfach zu verwenden sind und viele Operationen unterstützen.

 

Erstellen einer Liste

Eine Liste wird erstellt, indem Elemente in eckige Klammern [] gesetzt und durch Kommata getrennt werden. Listen können verschiedene Datentypen enthalten, darunter Ganzzahlen, Fließkommazahlen, Zeichenketten und andere Listen.

# Erstellen von Listen mit verschiedenen Datentypen
zahlen = [10, 20, 30, 40, 50]
woerter = ["Apfel", "Banane", "Kirsche"]
gemischt = [10, "Hallo", 2.71, False]

 

Zugriff auf Listenelemente

Jedes Element in einer Liste hat einen Index, beginnend bei 0. Mithilfe dieses Indexes können einzelne Elemente abgerufen werden.

fruechte = ["Apfel", "Banane", "Kirsche"]
print(fruechte[0])  # Ausgabe: "Apfel"
print(fruechte[2])  # Ausgabe: "Kirsche"

 

Modifizieren von Listenelementen

Listen in Python sind veränderlich, d. h., Sie können den Wert eines Elements nach der Erstellung der Liste ändern.

fruechte = ["Apfel", "Banane", "Kirsche"]
fruechte[1] = "Orange"
print(fruechte)  # Ausgabe: ["Apfel", "Orange", "Kirsche"]

 

Listenoperationen

Python-Listen unterstützen eine Vielzahl von Operationen zum Hinzufügen, Entfernen und Bearbeiten von Elementen.

1. Hinzufügen von Elementen

  • append(): Fügt ein Element am Ende der Liste hinzu.
  • insert(): Fügt ein Element an einer bestimmten Position ein.
  • extend(): Fügt Elemente aus einer anderen Liste oder iterierbaren Struktur am Ende hinzu.

 

 

2. Entfernen von Elementen

  • remove(): Entfernt das erste Vorkommen eines bestimmten Elements.
  • pop(): Entfernt ein Element an einem bestimmten Index (Standard ist das letzte Element) und gibt es zurück.
  • clear(): Entfernt alle Elemente aus der Liste.
fruechte = ["Apfel", "Banane", "Kirsche", "Banane"]
fruechte.remove("Banane")  # Entfernt das erste Vorkommen von "Banane"
print(fruechte)            # Ausgabe: ["Apfel", "Kirsche", "Banane"]

entferntes_element = fruechte.pop(1)  # Entfernt das Element an Index 1 und gibt es zurück
print(entferntes_element)             # Ausgabe: "Kirsche"
print(fruechte)                       # Ausgabe: ["Apfel", "Banane"]

fruechte.clear()                      # Entfernt alle Elemente
print(fruechte)                       # Ausgabe: []

 

Listenslicing

Sie können mit dem Slicing eine Teilmenge einer Liste abrufen. Die Syntax für Slicing lautet list[start:stop:step].

zahlen = [0, 10, 20, 30, 40, 50]
print(zahlen[1:4])      # Ausgabe: [10, 20, 30]
print(zahlen[:3])       # Ausgabe: [0, 10, 20]
print(zahlen[::2])      # Ausgabe: [0, 20, 40] (jedes zweite Element)

 

Listenfunktionen und -methoden

Python bietet mehrere eingebaute Funktionen und Methoden für Listen:

  • len(list): Gibt die Anzahl der Elemente in einer Liste zurück.
  • min(list) und max(list): Gibt den minimalen bzw. maximalen Wert zurück.
  • sum(list): Gibt die Summe der Elemente zurück (funktioniert nur mit numerischen Listen).
  • list.sort(): Sortiert die Liste in aufsteigender Reihenfolge (kann auch für absteigende Reihenfolge verwendet werden).
  • list.reverse(): Kehrt die Reihenfolge der Elemente in der Liste um.
zahlen = [30, 50, 10, 40, 20]
print(len(zahlen))          # Ausgabe: 5
print(min(zahlen))          # Ausgabe: 10
print(sum(zahlen))          # Ausgabe: 150

zahlen.sort()
print(zahlen)               # Ausgabe: [10, 20, 30, 40, 50]

zahlen.reverse()
print(zahlen)               # Ausgabe: [50, 40, 30, 20, 10]

 

List Comprehensions

List Comprehensions bieten eine kompakte Möglichkeit, Listen zu erstellen, indem Elemente transformiert oder auf Bedingungen gefiltert werden. Die Syntax lautet [Ausdruck for Element in iterable if Bedingung].

# Erstellen einer Liste mit Quadratzahlen
quadrate = [x**2 for x in range(6)]
print(quadrate)  # Ausgabe: [0, 1, 4, 9, 16, 25]

# Filtern einer Liste
gerade_zahlen = [x for x in range(10) if x % 2 == 0]
print(gerade_zahlen)  # Ausgabe: [0, 2, 4, 6, 8]

 

Verschachtelte Listen

Python-Listen können andere Listen enthalten, wodurch eine verschachtelte oder mehrdimensionale Struktur (wie Matrizen oder Gitter) entsteht.

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]
print(matrix[0])         # Ausgabe: [1, 2, 3]
print(matrix[1][2])      # Ausgabe: 6 (Element in der 2. Zeile, 3. Spalte)

 

Zusammenfassung

  • Listen speichern mehrere Elemente einer einzelnen Variable. Listen werden mit [ ]​ erstellt.
  • Beispiel: list_languages ​​= ["Englisch", "Deutsch", "Spanisch"]​
  • Listenelemente werden ähnlich wie Zeichenfolgen indiziert.

     

  • Das erste Element hat den Index [0] und das zweite den Index [1]. Daher können die Indizierungsvorgänge für Listen ähnlich wie für Zeichenfolgen durchgeführt werden.​

  • Listen sind veränderbar. Elemente können aus der Liste entfernt und hinzugefügt werden. Neue Elemente werden am Ende der Liste hinzugefügt, wenn die Position nicht definiert ist. Listen erlauben Duplikate​

  • Die Funktion insert() fügt ein Element am angegebenen Index hinzu--> syntax= list.insert( postion, item)

  • Fügen Sie Elemente am Ende der Liste mit der Funktion append() hinzu--> syntax= list.append(item)

  • Um Elemente aus einer anderen Liste anzuhängen, verwenden Sie die Funktion extend()--> syntax=list1.extend(list2) [Note:Sie können mit der Erweiterungsfunktion auch Tupel und Zeichenfolgen zur Liste hinzufügen.]

  • remove()-Funktion zum Entfernen des ersten Vorkommens eines Elements--> syntax= list.remove(element)

  • Die Funktion pop() wird verwendet, um Elemente am angegebenen Index zu entfernen--> syntax= list.pop(index[])

  • Die Funktion del() löscht die Liste. Die Funktion clear() leert die Liste.​

  • Note-- Listen können Elemente unterschiedlichen Typs speichern, Arrays können jedoch nur Elemente desselben Typs speichern.