Listen 1D
Zum Speichern von mehreren Werten unter einem einzigen Namen verwendet man in Python Listen. Man kann sich Listen als Tabellen mit einer Spalte vorstellen. Die Zellen in der Tabelle werden als Elemente bezeichnet und sind durchnummeriert. So kann man einzelne in der Liste gespeichert Werte unterscheiden. Die Nummer eines Elements wird als dessen Index bezeichnet.
- Das erste Element in der Liste trägt den Index 0.
- Der Index des letzten Elementes ist die Länge der Liste minus 1.
Das folgende Bild illustriert dies für eine Liste mit 4 Noten. Die Länge der Liste ist 4, das letzte Element trägt den Index 3.
- Index
- Wert
0-
4.5 1-
5 2-
3.5 3-
5.5
In Python kann man diese Liste wie folgt erzeugen:
noten = [4.5, 5, 3.5, 5.5]
print('Die vierte Note war eine', noten[3])
Im Beispiel wird die vierte Note mit dem Index 3 ausgegeben.
Aufgaben
Debuggen
Der Debug-Modus ermöglicht es, ein Programm Zeile für Zeile auszuführen und den aktuellen Zustand der Variablen zu untersuchen. Dies ist besonders hilfreich, um einerseits den Ablauf des Programms zu verstehen und andererseits Fehler im Code zu finden.
- Öffnen Sie ein Python-Programm in VS Code - beim erstmaligen Öffnen wird VS Code fragen, ob Sie die Python-Erweiterung installieren möchten. Bestätigen Sie dies.
- Setzen Sie einen Haltepunkt (Breakpoint) in der Zeile, die Sie untersuchen möchten, indem Sie links neben die Zeilennummer klicken. Klicken Sie auf die Schaltfläche Run and Debug in der linken Seitenleiste und danach auf den Debug-Knopf.
- Wählen Sie
Python Debuggeraus.
- Wählen Sie
Python File.
- Das Programm hält nun beim gesetzten Breakpoint an. In der Seitenliste links können Sie alle Veriablen inspizieren. Im Reiter Debug Console können Sie zudem Python-Code direkt ausprobieren - alle Variablen und Funktionen, die beim aktuellen Haltepunkt definiert sind, können Sie hier verwenden.

notenwird in der Debug-Konsole ausgeben - Mit der Schaltflächen Step Over können Sie das Programm Zeile für Zeile ausführen. Mit Continue wird das Programm bis zum nächsten Haltepunkt ausgeführt.
- Dateiname
- EF-Informatik/exercises/listen-1d.py
-
Erstellen Sie das folgende Programm in Ihrem Repository
Programm
listen-1d.py'''Demo: Eindimensionale Listen'''# 1) Liste mit Notenwerten erzeugen und Variablen zuweisennoten = [3.5, 6, 5, 4.5]# 2) - Ganze Liste anzeigen;# - Element mit Index 2 aus der Liste anzeigen# - Länge der Liste anzeigen# - das letzte Element der Liste anzeigen (egal wie lange die liste gerade ist...)print(noten)print(noten[2])print(len(noten))print(noten[ len(noten) - 1 ])# 3) Schleife über alle Elemente der Listefor note in noten:print(note)# 4) Schleife über alle Elemente der Liste mit Index# (beginnt bei 0 und endet mit 1 weniger als Länge der Liste)for index in range(0, len(noten)):print(index, ':', noten[index])# 5) Element mit Index 3 neuen Wert zuweisennoten[3] = 5.5print(noten)# 6) Fehler: Zuweisen zu einem Element mit ungültigem Index (die Liste ist nicht so lang)# noten[7] = 6# 7) Ein weiteres Element am Schluss der Liste anhängennoten.append(5)print(noten)# 8) Ein Element vor dem Element mit Index 3 einfügennoten.insert(3, 4)print(noten)# 9) Die Liste aufsteigend sortierennoten.sort()print(noten)# 10) Ein Element an einer bestimmten Stelle aus der Liste entfernen (und zurückgeben)first = noten.pop(0)print(first)print(noten)# 11) Erstes Element mit dem Wert 6 aus der Liste entfernennoten.remove(6)print(noten)# 12) Funktion aus dem Statistikmodul verwenden, um den Mittelwert der Elemente in der Liste zu berechnenimport statisticsmittelwert = statistics.mean(noten)print(mittelwert)# 13) Leere Liste erstellennoten = []print(noten)# 14) Liste mit Stringsnoten =['gut', 'erfüllt', 'mangelhaft', 'erfüllt']print(noten) -
Führen Sie das Programm Zeile für Zeile (mit dem Debugger) aus und untersuchen Sie die verschiedenen Listen-Optionen.
-
Setzen Sie einen Breakpoint vor dem auskommentierten Szenario 6 und führen Sie die Zeile 31 in der Debug Konsole aus. Welche Ausgabe erhält man?
Laden... -
Fügen Sie die Änderungen hinzu und pushen Sie sie in Ihr Repository.
Eindimensionale Listen
Hier nochmals in der Übersicht die Funktionsweise von Listen in Python.
Liste erzeugen []
# Liste erzeugen und Variablen zuweisen
noten = [3.5, 6, 5, 4.5]
# Ganze Liste anzeigen
print(noten)
# Element mit Index 2 aus der Liste anzeigen
print(noten[2])
Schleife über Listen-Indices
noten = [3.5, 6, 5, 4.5]
# (beginnt bei 0 und endet mit 1 weniger als Länge der Liste)
for index in range(0, len(noten)):
print(index, ":", noten[index])
Listenelemente ändern
noten = [3.5, 6, 5, 4.5]
# Element mit Index 3 neuen Wert zuweisen
noten[3] = 5.5
print(noten)
Element hinzufügen append()
noten = [3.5, 6, 5, 4.5]
# Element am Ende der Liste anhängen
noten.append(5)
print(noten)
Element an bestimmter Stelle hinzufügen insert()
noten = [3.5, 6, 5, 4.5, 5]
# vor dem Element mit Index 3 eine "4" einfügen
noten.insert(3, 4)
print(noten)
Letztes Element entfernen pop()
Letztes Element entfernen und zurückgeben.
noten = [3.5, 4, 4.5, 5, 5, 6]
last = noten.pop()
print(last)
print(noten)
Element aus der Liste entfernen remove()
noten = [3.5, 5, 4.5, 4, 5, 6]
# 11) Erstes Element mit dem Wert 5 aus der Liste entfernen
noten.remove(5)
print(noten)
Mittelwert statistics.mean()
import statistics
noten =[3.5, 5, 4.5, 4, 5, 6]
mittelwert = statistics.mean(noten)
print(mittelwert)
Weitere Funktionen
👉 https://docs.python.org/3/library/statistics.html
Fragen
quiz) ist eine Anmeldung erforderlich.