Ziele
- Werte mit
input()einlesen - Eingaben in Zahlen umwandeln
- Eine einfache Prüfung der Eingabe einbauen
Bisher stand alles fest im Code
In allen bisherigen Programmen hast du die Werte selbst in den Code geschrieben. Jetzt kommt die letzte Zutat: Der Nutzer gibt sie ein.
name = input("Wie heißt du? ")
print("Hallo", name)Das Eingabe-Feld
Weil dieses Programm input() benutzt, ist über dem Code ein Feld „Eingaben" erschienen. Was du dort einträgst (eine Zeile pro input()), liest das Programm beim Ausführen der Reihe nach ein.
input() liefert immer einen String
Auch wenn du eine Zahl eintippst – input() gibt Text zurück. Zum Rechnen musst du umwandeln:
a = input("Erste Zahl: ")
b = input("Zweite Zahl: ")
print(a + b) # "8" + "5" -> "85" (Text!)
print(int(a) + int(b)) # 8 + 5 -> 13Kürzer geht es, indem du direkt umwandelst:
a = int(input("Erste Zahl: "))
b = int(input("Zweite Zahl: "))
print("Summe:", a + b)Falsche Eingabe
int("acht") stürzt ab. Wie man das sauber abfängt, lernst du bei do-while & try/except.
Eingaben prüfen
alter = int(input("Dein Alter: "))
if alter < 0:
print("Ein Alter kann nicht negativ sein.")
elif alter < 18:
print("Noch nicht volljährig.")
else:
print("Volljährig.")Aufgaben
Löse die folgenden Aufgaben selbstständig oder mit einem Partner oder Partnerin.
Aufgabe 1: Begrüßung mit Alter
Frage nach Name und Alter und gib aus: „Hallo Name, in 10 Jahren bist du X."
# dein CodeAufgabe 2: Rechteck interaktiv
Frage nach Breite und Höhe (als Zahlen) und gib Fläche und Umfang aus.
# dein CodeAufgabe 3: Countdown
Frage nach einer Startzahl und zähle mit einer Schleife von dort auf 0 herunter, dann „Start!".
start = int(input("Startzahl: "))
# while-SchleifeWeiter geht's
Ab jetzt darfst du input() überall einsetzen. Im nächsten Kapitel bleiben die Beispiele aber meist bei festen Werten – damit man sich auf die Algorithmen konzentrieren kann.