Wozu Listen?

Theorie Icon Mit Listen können Datenwerte gruppiert werden. Meist werden sie zur Aufzählung von Objekten verwendet, die in einer bestimmten Weise zusammen gehören, wie alle geraden Zahlen zwischen 1 und 10, die Namen der Wochentage oder, wie in unserem Beispiel "Apfel", Birne und "Brombeere" als Bespiele für Früchte. Liste Grafik

Der Datentyp Liste ist ein sequentieller Datentyp. Eine Liste ist eine Folge von Werten. Die Werte in einer Liste werden als Elemente bezeichnet.

Erzeugen von Listen

In Python kann eine Liste erstellt werden, indem die Elemente in eckige Klammern geschrieben werden:


>> fruechte = ["Apfel", "Brombeere", "Birne"]

Die drei Elemente dieser Liste sind die Zeichenketten "Apfel", "Brombeere" und "Birne". Sie werden durch Komma voneinander getrennt.

Die Datentypen der Elemente der Liste fruechte sind identisch (string), das muss aber nicht sein. Die folgende Liste enthält eine Zahl, eine Zeichenkette und einen boolschen Wahrheitswert:


>> liste = [3, "Farben", True]

Die leere Liste

Mit der Anweisung

>> liste = []
kann eine leere Liste erzeugt und der Variablen liste zugewiesen werden.

Der Index-Operator

Auf einzelne Listenelemente kann wie bei Zeichenketten mit dem Index-Operator [] zugegriffen werden. In Python beginnt der Index dabei immer bei 0, d. h mit dem Index 0 greifen wir auf das 1. Element der Liste zu:


>> print(fruechte[0])
Apfel

Listen verändern

Mit den Index-Operator können wir einzelne Listenelemente verändern. Bei Zeichenketten ist dies nicht möglich.


>> fruechte[2] = "Traube"
>> print(fruechte)
["Apfel", "Brombeere", "Traube"]
Mit der Methode .append() können Elemente an die Liste angehangen werden:

>> fruechte.append("Kirsche")
>> print(fruechte)
["Apfel", "Brombeere", "Traube", "Kirsche"]
Mit der Methode .pop() können Elemente entfernt werden. Der Aufruf

fruechte.pop()
entfernt dabei das letzte Element aus der Liste.

Listen durchlaufen

Mithilfe einer Schleife können Liste wie folgt durchlaufen werden:

for frucht in fruechte:
    print(frucht)

Übung: Quellcode-Memory

Welcher Quellcode erzeugt welche Ausgabe?