Schleifen sind sehr hilfreich, um über ein Objekt zu iterieren oder einfach einen Teil des Codes zu wiederholen. Dennoch ist es manchmal notwendig, die Schleife vorzeitig zu "brechen". Stell dir vor, du möchtest das erste negative Element in einer Sequenz finden. Wenn du von dem ersten Element der Sequenz an iterierst und fortfährst, möchtest du die Schleife beenden, sobald du ein negatives Element findest, und nicht weiter iterieren, da es redundant wäre. Dies kann mit dem Befehl break erreicht werden:
numbers = [
1, 5, 100, 77,
2, -7, 8, 10,
14, 67, -8, 0,
]
for n in numbers:
print(f'Trying {n}...')
if n < 0:
print(f'Found a negative number: {n}')
break
print('Done!')
Die Ausgaben des Programms sind die folgenden:
Trying 1...
Trying 5...
Trying 100...
Trying 77...
Trying 2...
Trying -7...
Found a negative number: -7
Done!
Das Programm stoppt, sobald es auf eine negative Zahl trifft.
Herausforderung
Du suchst in einem großen Stapel von Dokumenten nach den Unterlagen von Mike. Du schaust dir jedes Dokument nacheinander an und versuchst herauszufinden, wessen Unterlagen es sind. Wenn du Mike in den Unterlagen findest, möchtest du die Anzahl der Dokumente ausgeben, die du angesehen hast, bevor du die von Mike gefunden hast.
Die Eingabe enthält Namen – jeder Name in einer eigenen Zeile.
Die Ausgabe des Programms sollte sein: Found Mike's records after looking through X documents. Dabei ist X die Anzahl der Dokumente, die du bisher angesehen hast.
Eingabe
Ausgabe
Kate
Bob
Mike
Anna
Steven
Found Mike's records after looking through 3 documents