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.