At My Fingertips
Rapid Playground
Sie gehen mit Ihrer grossen Familie in den Freizeitpark Phantasialand (Deutschland) und wollen auf die Achterbahn Winja's Force. Auf diese dürfen jedoch nur Personen, die zwischen 140 und 195cm gross sind.
# Eingabe
groessenliste = [140, 155, 199, 181, 165, 177, 134, 120]
erlaubnis = rectangle(1, 1, transparent)
# Verarbeitung
for groesse in groessenliste:
if groesse < 140:
erlaubnis = nein
elif 140 <= groesse <= 195:
erlaubnis = ja
else:
erlaubnis = nein
# Ausgabe
show_graphic(erlaubnis)
Überprüfen Sie:
Achten Sie darauf, dass sich der Ausgabebefehl in der Schleife befindet, damit nach jedem Schleifendurchlauf das Ergebnis ausgegeben wird.
[4, 7, 10, 15, 18]
durchläuft und für jede Zahl ausgibt, ob sie gerade oder ungerade ist (Paritätsprüfung). Tipp: Verwenden Sie als Bedingung zahl % 2 == 0
.["Maria", "Alice", "Bob", "Charlie"]
durchläuft und prüft, ob der Name „Alice“ in der Liste enthalten ist. Es wird eine entsprechende Nachricht ausgegeben, wenn der Name gefunden wird. Wenn der Name nicht gefunden wird, passiert nichts.zahlen = [4, 7, 10, 15, 18]
for zahl in zahlen:
if zahl % 2 == 0:
print(zahl, "ist gerade.")
else:
print(zahl, "ist ungerade.")
# Erklärung:
# if zahl % 2 == 0: Überprüft, ob die Zahl gerade ist, und gibt die entsprechende Nachricht aus.
# else: Gibt aus, dass die Zahl ungerade ist, wenn sie nicht gerade ist.
namen = ["Maria", "Alice", "Bob", "Charlie"]
for name in namen:
if name == "Alice":
print("Alice wurde gefunden.")
break
# Erklärung:
# if name == "Alice": Überprüft, ob der Name „Alice“ ist.
# break: Beendet die Schleife sofort (wenn der Name gefunden wurde).
for-else
oder for if-else
?Für die Alice-Aufgabe ist natürlich elegant, wenn das Programm meldet, falls Alice nicht gefunden wurde. Dafür bietet Python die for-else
Kontrollstruktur, die wie folgt aussieht:
namen = ["Maria", "Bob", "Alice", "Charlie", "Amna"]
for name in namen:
if name == "Alice":
print("Alice wurde gefunden.")
break
else: # gleicher Einzug wie for
print("Alice wurde nicht gefunden.")
Die for-else
Kontrollstruktur braucht drei Elemente:
for
-Schleife (oder while
-Schleife),break
-Aufruf, um die Schleife abzubrechen, falls die Suche erfolgreich war undelse
-Block nach der Schleife, falls die Suche erfolglos war. Dieser Block wird also nur ausgeführt, wenn die Schleife nie mit break
abgebrochen (terminiert) wurde.else
hat den gleichen Einzug wie for
, nicht wie if
.
Sobald das Programm zum ersten Mal "Alice"
findet, gibt es die passende Meldung aus und das Schlüsselwort break
lässt das Programm abbbrechen. Egal wie oft Alice also in der Liste vorkommt, die Erfolgsmeldung wird höchstens einmal ausgegeben.
Jetzt wird für jedes Listenelement "Alice"
die Erfolgsmeldung ausgegeben (also 3 Mal), weil das Schlüsselwort break
fehlt. Auch wird die Misserfolgsmeldung fälschlicherweise ausgegeben, auch weil das Schlüsselwort break
fehlt.
[0.0, 1.1, 2.2, 3.3, 4.4]
durchläuft und prüft, ob die Zahl 3.3
vorkommt. Geben Sie eine entsprechende Nachricht aus, je nachdem, ob die Zahl enthalten ist oder nicht. Überprüfen Sie auch mit 3.4
."Programmieren"
durchläuft und prüft, ob der Buchstabe "e" im String vorkommt. Geben Sie eine entsprechende Nachricht aus, je nachdem, ob der Buchstabe "e" enthalten ist oder nicht. Überprüfen Sie auch mit x
. Tipp: Sie können Strings genau gleich durchlaufen wie Listen."Programmieren"
durchläuft und für jeden Vokal ("a", "e", "i", "o", "u") im Wort eine Nachricht ausgibt.zahlenliste = [0.0, 1.1, 2.2, 3.3, 4.4]
for zahl in zahlenliste:
if zahl == 3.3: # oder 3.4
print("Die Zahl 3.3 wurde gefunden.")
break
else:
print("Die Zahl 3.3 wurde nicht gefunden.")
# Erklärung:
# if zahl == 3.3: Überprüft, ob die Zahl 3.3 in zahlenliste vorkommt.
# break: Beendet die Schleife, wenn die Zahl gefunden wurde.
# else (nach der Schleife): Wird nur ausgeführt,
# wenn die Schleife nicht mit einem break abgebrochen
# wurde (d.h., 3.3 wurde nicht gefunden).
wort = "Programmieren"
for buchstabe in wort:
if buchstabe == "e":
print("Der Buchstabe 'e' wurde gefunden.")
break
else:
print("Der Buchstabe 'e' wurde nicht gefunden.")
# Erklärung:
# if buchstabe == "e": Überprüft, ob der Buchstabe "e" im Wort vorkommt.
# break: Beendet die Schleife, wenn der Buchstabe gefunden wurde.
wort = "Programmieren"
vokale = "aeiou"
for buchstabe in wort:
if buchstabe.lower() in vokale:
print("Der Buchstabe", buchstabe, "ist ein Vokal.")
# Erklärung:
# buchstabe.lower() in vokale: Überprüft, ob der Buchstabe ein Vokal ist,
# .lower(): die Gross-/Kleinschreibung wird ignoriert.
# print: Gibt eine Nachricht für jeden Vokal aus, der im Wort vorkommt.
if
, elif
, else
) sinnvoll verwenden.break
eine Schleife abbrechen.for-else
sinnvoll verwenden.This activity has been created by Gall and is licensed under CC BY-SA 4.0.
Selektion mit Schleifen
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version 6ea4c91 (Wed, 05 Feb 2025 09:34:19 GMT)