Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Listen
Listen gehören in Python zu den zusammengesetzten Datentypen. Eine Liste kann man sich als einen Behälter für mehrere Werte vorstellen. Diese Werte können unterschiedliche Datentypen haben Sie können sogar selbst wieder Listen sein. Listen erkennt man in Python durch eckige Klammern. In den Klammern werden die Werte durch ein Komma getrennt.
Beispiele:
[1,23,7,4] ["Hallo",4,34.2,[1,2,3]]
In der ersten Liste sind nur ganze Zahlen als Werte enthalten. In der zweiten Liste stehen Werte unterschiedlicher Datentypen, wobei der letzte Wert [1,2,3] selbst eine Liste ist.
Definition einer Listen
Eine Liste kann man einfach durch den Zuweisungsoperator =
anlegen:
Beispiele:
liste1 = [1,23,7,4] liste2=["Glauchau","Meerane","Waldenburg", "Mülsen", "Thurm"] liste3=[[1,2,3],[4,5,6],[7,8,9]] liste4=[] #leere Liste
Auch das Anlegen einer leeren Liste kann sinnvoll sein, wenn man durch Anhängen von weiteren Listenelementen eine Liste aufbauen will. (Siehe unten!)
Zugriff auf die Listenelemente
Wir betrachten die Liste
liste1=[1,23,21,23,12]
Die gesamte Liste lässt sich mit Hilfe der print-Anweisung ausgeben:
>>> print(liste1) [1, 23, 21, 23, 12]
Auf einzelne Listenelemente kann man durch Angabe der Nummer (den Index) des Listenelements zugreifen. Die Nummer steht dabei nach dem Listennamen in eckigen Klammern. Die Zählung beginnt bei 0.
>>> print(liste1[2]) 21
Teilbereiche
Auf Teilbereiche(-listen) von Listen kann man mit Hilfe sogenannter Slices zugreifen. ein Slice wird in der Form [n:m] nach dem Listenname angegeben. Er gibt ein Objekt vom Datentyp Liste zurück. Wenn man n weglässt ([:m]), wird der Wert 0 für n angenommen, wenn man m weglässt, wird der Index des letzten Listenelements für m angenommen.
Beispiele:
>>> liste = [2, 5, 7, 3, 11, 15] >>> print(liste[1:4]) [5, 7, 3] >>> print(liste[:4]) [2, 5, 7, 3] >>> print(liste[1:]) [5, 7, 3, 11, 15] >>> print(liste[:]) [2, 5, 7, 3, 11, 15] >>> print(liste[3:3]) []
Zugriff auf die Listenelemente bei mehrdimensionalen Listen
Mehrdimensionale Listen sind Listen, die als Elemente wieder Listen enthalten. Auf die Elemente dieser Listen kann man zugreifen, indem man die Indizes der äußeren und der inneren Liste einfach an den Listennamen anhängt. Bei liste[i][j] wäre i der Index der äußeren Liste und j der Index der inneren Liste. An Stelle der Indizes in eckigen Klammern können auch Slices stehen.
Beispiele:
Definierte Liste:
liste=[[1,2,3],[4,5,6],[7,8,9]]
Zugriff auf die Elemente:
>>> print(liste[1]) [4, 5, 6] >>> print(liste[1][2]) 6 >>> print(liste[2][1:3]) [8, 9]
Weitere Listenfunktionen
Wir betrachten die Liste
liste=[1,23,21,23,12]
Um den Wert eines Listenelements zu ändern benutzt man den Zuweisungsoperator =
:
>>> liste1[1]=555 >>> print(liste1) [1, 555, 21, 23, 12]
Mit der Funktion append
kann man Elemente an eine Liste anhängen.
>>> liste1.append(555) >>> print(liste1) [1, 23, 21, 23, 12, 555]
Mit der Funktion del
kann man Elemente oder Teilbereiche von Listen löschen.
>>> del liste1[1:3] >>> print(liste1) [1, 23, 12]
Verwendung der for-Anweisung auf Listen
Die for-Anweisung lässt sich auch direkt auf Listen anwenden. So hat die Anweisung
for i in range(5):
dieselbe Wirkung wie
for i in [0, 1, 2, 3, 4]:
i nimmt der Reihe nach jeden Wert der Liste an.
Auf diese Weise lassen sich auch Schleifen konstruieren, bei denen die Schleifenvariablen auch andere Werte als ganze Zahlen annehmen können. In der Schleife
for wert in ["Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"]:
nimmt die Varaible wert bei jeden Durchlauf der Reihe nach jeden Wochentag einmal als Wert an.
Aufgaben
Aufgabe 1
Welche Ausgabe erfolgt jeweils bei den einzelnen print-Anweisungen? Überprüfe jeweils in einer Pythonshell!
>>> liste = [2, 7, 15, 28, 45, 12, 17, 33] >>> print(liste) [2, 7, 15, 28, 45, 12, 17, 33] >>> print(liste[5]) >>> print(liste[3:7]) >>> print(liste[:5]) >>> print(liste[3:])
Aufgabe 2
Welche Ausgabe erfolgt jeweils bei den einzelnen print-Anweisungen? Überprüfe jeweils in einer Pythonshell!
>>> liste=[[2,1,4,5],[3,2,1,8]] >>> print(liste[1]) [3, 2, 1, 8] >>> print(liste[0][3]) >>> print(liste[1][:2])
Aufgabe 3
Welche Ausgabe erfolgt jeweils bei den einzelnen print-Anweisungen? Beachte, dass sich die Liste nach bestimmten Anweisungen ändert. Überprüfe jeweils in einer Pythonshell!
>>> liste=[12,15,21,13,17,9,6,14] >>> liste[4]=88 >>> print(liste) >>> liste.append(16) >>> print(liste) >>> del(liste[3]) >>> print(liste) >>> del(liste[5:]) >>> print(liste)
Hier können Fragen zum Inhalt der Seite gestellt werden.