Python Lernhandbuch

Kapitel 4: Listen, Tupel, Dictionaries und Mengen · Abschnitt 1 von 4

Listen

python
zahlen = [5, 3, 8]
zahlen.append(1)          # [5, 3, 8, 1]
zahlen[0]                 # 5
zahlen[-1]                # 1
zahlen[1:3]               # [3, 8]
len(zahlen)               # 4
8 in zahlen               # True
Methode Wirkung Parameter
append(x) Hängt x hinten an das Element
extend(iterable) Hängt alle Elemente einer anderen Folge an Liste, Tupel usw.
insert(i, x) Fügt x an Position i ein Index und Element
remove(x) Entfernt das erste Vorkommen von x Fehler (ValueError), wenn nicht vorhanden
pop(i=-1) Entfernt und liefert das Element an Position i ohne Angabe das letzte
index(x) Position des ersten Vorkommens Fehler, wenn nicht vorhanden
count(x) Wie oft kommt x vor
sort(key=None, reverse=False) Sortiert die Liste an Ort und Stelle key: Funktion, die den Sortierwert liefert; reverse: absteigend
reverse() Dreht die Reihenfolge um
copy() Flache Kopie
clear() Leert die Liste

sorted(iterable, key=None, reverse=False) ist die Funktion dazu: Sie lässt das Original unverändert und gibt eine neue sortierte Liste zurück.

python
namen = ['Zoe', 'adam', 'Berta']
sorted(namen)                       # ['Berta', 'Zoe', 'adam']: Großbuchstaben zuerst
sorted(namen, key=str.lower)        # ['adam', 'Berta', 'Zoe']
sorted(namen, key=len, reverse=True)   # nach Länge, längste zuerst

Typische Falle: Zuweisung kopiert nicht.

python
a = [1, 2, 3]
b = a            # b zeigt auf dieselbe Liste
b.append(4)
print(a)         # [1, 2, 3, 4]  a hat sich mitverändert

c = a.copy()     # echte (flache) Kopie, alternativ list(a) oder a[:]

In C würdest du sagen: b = a kopiert den Zeiger, nicht den Inhalt.

Tipp: Bei Python-Beispielen kannst du auf ▶ Ausprobieren klicken, den Code verändern und direkt ausführen.

← Kapitelübersicht