Übung 7 – Eingaben mit input()
Ziel dieser Übung
Ihre Programme fragen nach Eingaben, speichern die Antworten in Variablen und rechnen damit weiter.
Wichtig: Programme mit input() warten auf Ihre Eingabe im Terminal. Tippen Sie dort Ihre Antwort und drücken Sie Enter.
1. Das Programm wartet
input() ist das Gegenstück zu print(): Das Programm hält an, bis jemand Enter drückt.
print("Anfang des Programms")
input("Bitte Enter drücken ")
print("Ende des Programms")
Anfang des Programms
Bitte Enter drücken
Ende des Programms
2. Die Antwort speichern
Was eingetippt wird, speichern Sie in einer Variablen. Der Text in den Klammern ist die Frage an die Nutzerin oder den Nutzer:
name = input("Wie heißen Sie? ")
print(f"Willkommen, {name}!")
Wie heißen Sie? Ada
Willkommen, Ada!
In den Ausgabe-Kästen sehen Sie die Eingabe (hier Ada) so, wie sie im Terminal erscheint.
3. input() liefert immer Text
Auch wenn Sie eine Zahl eintippen: input() gibt immer einen str zurück. Darum wird hier nicht gerechnet, sondern verbunden:
zahl = input("Zahl: ")
print(type(zahl))
print(zahl + zahl)
Zahl: 5
<class 'str'>
55
Mit int() wandeln Sie die Eingabe in eine ganze Zahl um, mit float() in eine Kommazahl:
zahl = int(input("Zahl: "))
print(type(zahl))
print(zahl + zahl)
Zahl: 5
<class 'int'>
10
4. Ein Beispiel zum Rechnen
zahl1 = int(input("Erste Zahl: "))
zahl2 = int(input("Zweite Zahl: "))
ergebnis = zahl1 + zahl2
print(f"Die Summe von {zahl1} und {zahl2} ist {ergebnis}.")
Erste Zahl: 3
Zweite Zahl: 4
Die Summe von 3 und 4 ist 7.
Tippt jemand drei statt 3, bricht int() mit einem ValueError ab. Wie man das abfängt, kommt später – für jetzt reicht: Fehlermeldung lesen, richtig eingeben.
Aufgabe 1 · Ein „Über mich“-Programm Übung
Fragen Sie nach Name, Geburtsjahr, Wohnort und einem Hobby. Berechnen Sie das Alter (ungefähr: aktuelles Jahr minus Geburtsjahr) und geben Sie einen Satz aus, z. B.:
Mein Name ist Anna. Ich wurde 2004 geboren, bin etwa 22 Jahre alt, lebe in Weingarten und mein Hobby ist Wandern.
Lösung anzeigen
jahr = 2026 # aktuelles Jahr
name = input("Wie heißen Sie? ")
geburtsjahr = int(input("In welchem Jahr sind Sie geboren? "))
wohnort = input("Wo wohnen Sie? ")
hobby = input("Was ist eines Ihrer Hobbys? ")
alter = jahr - geburtsjahr
print(f"Mein Name ist {name}. Ich wurde {geburtsjahr} geboren, bin etwa {alter} Jahre alt, lebe in {wohnort} und mein Hobby ist {hobby}.")
Wie heißen Sie? Anna
In welchem Jahr sind Sie geboren? 2004
Wo wohnen Sie? Weingarten
Was ist eines Ihrer Hobbys? Wandern
Mein Name ist Anna. Ich wurde 2004 geboren, bin etwa 22 Jahre alt, lebe in Weingarten und mein Hobby ist Wandern.
„Etwa“, weil das genaue Alter auch vom Geburtstag abhängt – das kann das Programm noch nicht wissen.
Aufgabe 2 · Zahlen addieren Übung
Fragen Sie nacheinander nach zwei Zahlen und geben Sie aus: „Die Summe von … und … ist ….“ Es sollen auch Kommazahlen wie 2.5 funktionieren.
Lösung anzeigen
zahl1 = float(input("Bitte geben Sie die erste Zahl ein: "))
zahl2 = float(input("Bitte geben Sie die zweite Zahl ein: "))
print(f"Die Summe von {zahl1} und {zahl2} ist {zahl1 + zahl2}.")
Bitte geben Sie die erste Zahl ein: 2.5
Bitte geben Sie die zweite Zahl ein: 4
Die Summe von 2.5 und 4.0 ist 6.5.
Aufgabe 3 · Temperatur umrechnen Übung
Fragen Sie nach einer Temperatur in Grad Celsius und rechnen Sie sie in Fahrenheit und Kelvin um: F = C · 1,8 + 32 und K = C + 273,15.
Lösung anzeigen
celsius = float(input("Temperatur in Grad Celsius: "))
fahrenheit = celsius * 1.8 + 32
kelvin = celsius + 273.15
print(f"{celsius} Grad Celsius sind {fahrenheit} Grad Fahrenheit und {kelvin} Kelvin.")
Temperatur in Grad Celsius: 20
20.0 Grad Celsius sind 68.0 Grad Fahrenheit und 293.15 Kelvin.
Aufgabe 4 · Der Durchschnitt Übung
Fragen Sie nach drei Zahlen (je eine eigene Frage). Geben Sie die Summe und den Durchschnitt aus. Tipp: Klammern setzen!
Lösung anzeigen
a = float(input("Erste Zahl: "))
b = float(input("Zweite Zahl: "))
c = float(input("Dritte Zahl: "))
summe = a + b + c
durchschnitt = summe / 3
print(f"Die Summe ist {summe} und der Durchschnitt ist {durchschnitt}.")
Erste Zahl: 4
Zweite Zahl: 5
Dritte Zahl: 9
Die Summe ist 18.0 und der Durchschnitt ist 6.0.
Ohne Zwischenschritt brauchen Sie Klammern: (a + b + c) / 3. Ohne Klammern rechnet Python a + b + c / 3 – Punkt vor Strich.
Weiter zu Übung 8: Debugging →
Exercise 7 – Input with input()
Goal of this exercise
Your programs ask for input, store the answers in variables and calculate with them.
Important: programs with input() wait for your input in the terminal. Type your answer there and press Enter.
1. The program waits
input() is the counterpart to print(): the program pauses until someone presses Enter.
print("Anfang des Programms")
input("Bitte Enter drücken ")
print("Ende des Programms")
Anfang des Programms
Bitte Enter drücken
Ende des Programms
2. Storing the answer
You store what is typed in a variable. The text in the brackets is the question to the user:
name = input("Wie heißen Sie? ")
print(f"Willkommen, {name}!")
Wie heißen Sie? Ada
Willkommen, Ada!
In the output boxes you see the input (here Ada) as it appears in the terminal.
3. input() always returns text
Even if you type a number: input() always returns a str. That is why this joins instead of calculating:
zahl = input("Zahl: ")
print(type(zahl))
print(zahl + zahl)
Zahl: 5
<class 'str'>
55
With int() you convert the input into a whole number, with float() into a decimal:
zahl = int(input("Zahl: "))
print(type(zahl))
print(zahl + zahl)
Zahl: 5
<class 'int'>
10
4. An example with calculations
zahl1 = int(input("Erste Zahl: "))
zahl2 = int(input("Zweite Zahl: "))
ergebnis = zahl1 + zahl2
print(f"Die Summe von {zahl1} und {zahl2} ist {ergebnis}.")
Erste Zahl: 3
Zweite Zahl: 4
Die Summe von 3 und 4 ist 7.
If someone types three instead of 3, int() stops with a ValueError. How to catch this comes later – for now: read the error message, type it correctly.
Task 1 · An “About me” program Practice
Ask for name, year of birth, town and a hobby. Calculate the age (roughly: current year minus year of birth) and print a sentence, e.g.:
Mein Name ist Anna. Ich wurde 2004 geboren, bin etwa 22 Jahre alt, lebe in Weingarten und mein Hobby ist Wandern.
Show solution
jahr = 2026 # aktuelles Jahr
name = input("Wie heißen Sie? ")
geburtsjahr = int(input("In welchem Jahr sind Sie geboren? "))
wohnort = input("Wo wohnen Sie? ")
hobby = input("Was ist eines Ihrer Hobbys? ")
alter = jahr - geburtsjahr
print(f"Mein Name ist {name}. Ich wurde {geburtsjahr} geboren, bin etwa {alter} Jahre alt, lebe in {wohnort} und mein Hobby ist {hobby}.")
Wie heißen Sie? Anna
In welchem Jahr sind Sie geboren? 2004
Wo wohnen Sie? Weingarten
Was ist eines Ihrer Hobbys? Wandern
Mein Name ist Anna. Ich wurde 2004 geboren, bin etwa 22 Jahre alt, lebe in Weingarten und mein Hobby ist Wandern.
“Roughly”, because the exact age also depends on the birthday – the program cannot know that yet.
Task 2 · Adding numbers Practice
Ask for two numbers one after the other and print: “The sum of … and … is ….” Decimals such as 2.5 should work too.
Show solution
zahl1 = float(input("Bitte geben Sie die erste Zahl ein: "))
zahl2 = float(input("Bitte geben Sie die zweite Zahl ein: "))
print(f"Die Summe von {zahl1} und {zahl2} ist {zahl1 + zahl2}.")
Bitte geben Sie die erste Zahl ein: 2.5
Bitte geben Sie die zweite Zahl ein: 4
Die Summe von 2.5 und 4.0 ist 6.5.
Task 3 · Converting temperature Practice
Ask for a temperature in degrees Celsius and convert it into Fahrenheit and Kelvin: F = C · 1.8 + 32 and K = C + 273.15.
Show solution
celsius = float(input("Temperatur in Grad Celsius: "))
fahrenheit = celsius * 1.8 + 32
kelvin = celsius + 273.15
print(f"{celsius} Grad Celsius sind {fahrenheit} Grad Fahrenheit und {kelvin} Kelvin.")
Temperatur in Grad Celsius: 20
20.0 Grad Celsius sind 68.0 Grad Fahrenheit und 293.15 Kelvin.
Task 4 · The average Practice
Ask for three numbers (one question each). Print the sum and the average. Tip: use brackets!
Show solution
a = float(input("Erste Zahl: "))
b = float(input("Zweite Zahl: "))
c = float(input("Dritte Zahl: "))
summe = a + b + c
durchschnitt = summe / 3
print(f"Die Summe ist {summe} und der Durchschnitt ist {durchschnitt}.")
Erste Zahl: 4
Zweite Zahl: 5
Dritte Zahl: 9
Die Summe ist 18.0 und der Durchschnitt ist 6.0.
Without the intermediate step you need brackets: (a + b + c) / 3. Without them Python calculates a + b + c / 3 – multiplication and division first.
On to exercise 8: debugging →