Zum Inhalt

Listen

Statt in einer Variablen kann man Werte auch bequem in einer Liste abspeichern und sie später bearbeiten.

Listen

Wir könnten bspw. Werte eines Sensors (hier: x, y, z) in einer Liste speichern:

temperaturen = [x, y, z]

Auf diese Werte können wir über danach über den sogenannten Index zugreifen:

x_temperatur = temperaturen[0]
y_temperatur = temperaturen[1]
z_temperatur = temperaturen[2]

Wir können auch mit for durch die Liste durchiterieren:

for element in temperaturen:
  print (element)

Probiere es im iTerm aus 👩🏼‍💻!

Du kannst Listen sogar verschachteln, also eine Liste in einer Liste haben:

sensordaten = [['montag', 'dienstag'], [22, 30]]

Falls Du die Werte einer Liste unveränderbar machen willst, schreibst Du sie mit runden Klammern:

unveraenderbare_liste = (2,'hi', 24.0)

Es gibt vordefinierte Befehle ("Funktionen"), die wir auf Listen anwenden können:

# Gibt die Länge der Liste aus:
len(liste)

Du kannst mit enumerate auch den Index und den zugehörigen Wert ausgeben:

for i, wert in enumerate (liste, 1):
  print (i, wert)

Um einer Liste einen Wert hinzuzufügen oder einen Wert zu löschen verwendest du append bzw. pop:

liste = [1, 'hi']
# fügt einen Wert hinzu
liste.append(24.0)
# löscht den ersten Wert
liste.pop(0)
# fügt an erster Stelle einen Wert hinzu
liste.insert(0, 'makerspace')

Du kannst eine Liste mit for i in range auch rasch mit Werten füllen:

'''Erzeugt eine Liste mit den ersten 100 quadrierten Zahlen, von 0 aus
startend'''

liste = x**2 for x in range(100)

Übung

Schreib ein Einkaufslisten-Programm. Das Programm soll dich zuers nach den einzukaufenden Produkten fragen. Danach soll es durch die Liste gehen und dir erlauben, ein Listenelement zu löschen.