Inhaltsverzeichnis

Fortsetzung - Verkettung von Aussagen, Listen

Vereinfachte Erweiterung mit Listen:

def istSchluss(x):
    if x in ["Ende", "", "Schluss jetzt", "Abbruch", "ESC"]:
        return True
[...]
print ("Da ist das Ende!")

Zum Weiterdenken

Warum funktioniert auch die folgende (vollständige!) Funktion?

def istSchluss(x):
    return x in ["Ende", "", "Schluss jetzt", "Abbruch", "ESC"]

Listen, for-Schleifen, range

list

Hier zunächst nur ein Beispiel, das einige Möglichkeiten zeigen soll. Der Abschnitt wird bei Bedarf ergänzt.

>>> einkaufen = ["Saft", "Brot", "Schokolade", "Tomaten"]
>>> len(einkaufen)  
4
>>> einkaufen[2]
'Schokolade'
>>> del einkaufen[2]
>>> einkaufen
['Saft', 'Brot', 'Tomaten']
>>> einkaufen.sort()
>>> einkaufen
['Brot', 'Saft', 'Tomaten']

for-Schleifen und range

Bei der for-Anweisung wird über die Elemente einer Sequenz iteriert. Im folgenden Beispiel durchläuft der Zähler i die Zahlen von 1 bis 9:

for i in range(1, 10): 
    print (i)

Man kann auch mit der Schleifenvariablen rechnen:

for i in range(1, 10): 
    print ("2 hoch %d ist %d." % (i, 2**i) )

Die Funktion range(i, j) erzeugt eine Liste von ganzen Zahlen mit Werten von i bis j-1. Falls der Startwert weggelassen wird, wird Null dafür angenommen. Eine Schrittweite kann als optionales drittes Argument angegeben werden, z.B. so:

a = range(5)          # a = [0, 1, 2, 3, 4] 
b = range(1, 8)       # b = [1, 2, 3, 4, 5, 6, 7] 
c = range(0, 14, 3)   # c = [0, 3, 6, 9, 12] 
d = range(8, 1, -1)   # d = [8, 7, 6, 5, 4, 3, 2] 

Die for-Anweisung kann über beliebige Sequenz-Typen iterieren und ist nicht etwa nur auf Ganzzahlen beschränkt:

a = "Grundkurs Informatik" 
# Gib die Zeichen in a aus. 
for c in a: 
    print (c)