python-list

Python Listen und Listenfunktionen

← Edley Insights

Wer Python lernen will, kommt am Thema Listen nicht vorbei. In diesem Tutorial lernst du alles, was du über Listen und Listenfunktionen in Python wissen musst. Viel Spaß! (Hinweis: Dieses Tutorial ist ein Auszug aus dem Python Komplettkurs.)

Im Alltag ist es üblich, Informationen in Listen zu schreiben. Das sorgt für eine ordentliche und übersichtliche Darstellung. Wenn du die Liste gut strukturierst, findest du später alle Informationen einfach wieder. Es ist ebenfalls möglich, Listen in Python zu verwenden. Die Python List ist ein sehr mächtiges Instrument dieser Programmiersprache und wird daher oft benutzt.

Wenn du eine Python Liste erstellen willst, musst du ihr zunächst einen Namen geben. Dabei gelten die gleichen Regeln wie für gewöhnliche Variablennamen.

Danach musst du der Liste mit dem Gleichheitszeichen Werte zuweisen. Diese müssen in einer eckigen Klammer stehen. Die einzelnen Einträge musst du durch ein Komma trennen. Wenn du beispielsweise eine Liste erzeugen willst, die die Werte 3, 6 und 9 enthält, benötigst du dafür folgenden Befehl:

meineListe = [3, 6, 9]

Wenn du eine Python Liste erzeugst, dann kann diese jeden beliebigen Datentyp enthalten. Es ist sogar möglich, innerhalb der Python Listen unterschiedliche Datentypen zu verwenden. Du kannst beispielsweise einen Integer-Wert, eine Fließkommazahl und eine String-Variable in einer Liste zusammenfassen:

meineListe2 = [51, 1.82, "blau"]

Verschachtelte Listen in Python

Es ist sogar möglich, eine Liste aus mehreren untergeordneten Python Listen zu erstellen. Das führt zu einer tabellenartigen Struktur. Das ist besonders praktisch, wenn du mehrere Gegenstände mit mehreren Eigenschaften zusammenfassen willst. Die folgende Liste erfasst bei drei Personen das Alter, die Größe und die Augenfarbe:

personen = [[51, 1.82, "blau"], [25, 1.76, "braun"], [38,1.80,"graublau"]]

Du kannst eine bestehende Python Liste auch erweitern. Dazu kommt das Pluszeichen zum Einsatz. Dabei musst du berücksichtigen, dass sich dieses nur auf mehrere Listen anwenden lässt. Daher musst du den Eintrag, den du hinzufügen willst, ebenfalls in eckige Klammern schreiben. Das bewirkt, dass er als Liste behandelt wird. Wenn du beispielsweise meineListe2 um einen Eintrag für den Wohnort erweitern willst, benötigst du dafür folgenden Befehl:

meineListe2 = meineListe2 + ["Berlin"]

Wenn du eine Liste aus mehreren Listen erstellt hast und daran einen weiteren Eintrag anhängen willst, dann benötigst du sogar eine doppelte Klammer. Sonst fügt das Programm die Werte in die übergeordnete Liste ein, ohne eine weitere untergeordnete Liste zu erstellen.

Das nächste Beispiel fügt zur Liste personen, die bereits drei untergeordnete Python Listen enthält, eine vierte untergeordnete Liste hinzu, um eine weitere Person aufzunehmen:

personen = personen + [[19,1.92, "braun"]]

Indizierung von Listen in Python

Eine der ersten Sachen, die du in Python lernst, ist die Ausgabe mit der print-Funktion. Wenn du eine einfache Variable ausgeben willst, dann musst du dafür ihren Namen in eine print-Funktion schreiben. Das Gleiche ist auch bei Listen möglich. Wenn du das tust, dann gibt das Programm die komplette Liste aus:

meineListe = [3, 6, 9]
print (meineListe)

Die Ausgabe: [3, 6, 9]

Häufig ist es jedoch nicht erwünscht, die komplette Liste auszugeben. Stattdessen kann es sinnvoll sein, nur auf einen einzelnen Wert zuzugreifen. Dieses Verfahren wird als Indizierung (python list indexing) bezeichnet. Dafür ist es notwendig, die Indexnummer in eine eckige Klammer hinter die Liste zu schreiben. Die Funktionsweise beim Python List Indexing ist genau die gleiche wie bei Strings. Auch hier beginnt die Zählung mit dem Index 0:

meineListe = [3, 6, 9]
print (meineListe[0])
print (meineListe[1])
print (meineListe[2])

Auf Teilbereiche von Listen zugreifen

Bei den Zeichenketten in Python konntest du bereits lernen, dass es mithilfe des Doppelpunktes möglich ist, auf einen Teilbereich zuzugreifen. Genau das gleiche Verfahren kannst du auch auf Listen anwenden. Auch die Verwendung negativer Zahlen – um am Ende der Liste zu beginnen – ist hierbei zulässig.

Wenn du eine ineinander verschachtelte Python Liste verwendest, musst du zwei Indexnummern angeben. Die erste bezieht sich dabei auf die übergeordnete Liste, die zweite auf die untergeordnete. Das folgende Beispiel erstellt wieder eine Liste aus drei Personen mit jeweils drei Eigenschaften. Diese entspricht der ersten verschachtelten Liste, die wir bereits weiter oben in diesem Tutorial verwendet haben. Danach gibt das Programm die Größe der ersten Person und das Alter der dritten Person aus:

personen = [[51, 1.82, „blau"], [25, 1.76, "braun"], [38,1.80, "graublau"]]
print (personen[0][1])
print (personen[2][0])

Listen-Methoden

Neben den einfachen Operatoren, die wir im vorherigen Abschnitt kennengelernt haben, gibt es auch bei Python Listen vorgefertigte Methoden, die viele Aufgaben erleichtern. Um diese zu nutzen, musst du immer zunächst die Liste angeben, auf die du sie anwenden willst. Danach folgt zunächst ein Punkt und danach die entsprechende Methode. Genau wie bei Zeichenketten ist die Auswahl an Methoden sehr groß. Im Folgenden werden die wichtigsten vorgestellt. Um die Listen-Methoden kennenzulernen, soll zunächst ein Beispielprogramm entstehen, das diese anwendet:

liste1 = [4, 6, 8]
liste2 = [9, 10]


liste1.append(12)
print (liste1)

liste1.extend(liste2)
print (liste1)

liste1.insert(3, 15)
print (liste1)

liste1.remove(9)
print (liste1)
print (liste1.index(8))
print (liste1.count(15))

liste1.reverse()
print (liste1)

liste1.sort()

print (liste1)

Wichtige Listen-Methoden in Python

Eine sehr wichtige Funktion ist append(). Diese hängt das Element, das in der Klammer angegeben ist, an die Liste an.

Die extend()-Methode hängt die Liste, die in der Klammer angegeben ist, an die Liste an, auf die wir die Funktion anwenden. Der Effekt ist genau der gleiche wie bei der Verwendung des Pluszeichens. Anstatt liste1.extend(liste2) zu schreiben, wäre es auch möglich, den Befehl liste1 += liste2 zu verwenden.

Sehr praktisch ist die insert()-Methode. Diese erlaubt es, ein Element an einer beliebigen Stelle in die Liste einzufügen. Der erste Parameter gibt dabei die Position an, der zweite das Element, das du einfügen willst. Alle Elemente der bisherigen Liste, die nach der angegebenen Position stehen, werden um eine Stelle nach hinten verschoben.

Die remove()-Methode entfernt ein Element aus der Liste. Dabei ist es wichtig, darauf zu achten, dass du hierbei nicht die Position angeben musst, sondern das Element, das du entfernen willst. Wenn dieses
mehrfach in der Liste auftaucht, löscht die Methode alle Einträge.

Die index()-Methode gibt an, an welcher Position das Element, das du in der Klammer angibst, das erste Mal in der Liste auftaucht.

Die count()-Methode gibt an, wie häufig das in der Klammer angegebene Element in der Liste erscheint.

Mit der reverse()-Methode kannst du die Reihenfolge der gesamten Liste umkehren.

Die sort()-Methode sortiert die Liste. Du kannst sie auf Python Listen anwenden, die entweder ausschließlich
Zeichenketten oder ausschließlich Zahlen enthalten. Die Sortierung erfolgt dann alphabetisch oder nach Größe. Es ist jedoch nicht möglich, sie auf Listen anzuwenden, die sowohl Zeichenketten als auch Zahlen enthalten.

Python Print List

python-list

Die Ausgabe der Listen aus dem Beispielprogramm

← Edley Insights oder zum Python Komplettkurs →