Station - Eingabe/Ausgabe in Python
Ausgaben mit der print-Anweisung
Die print
-Anweisung gibt alle übergebenen Werte der Reihe nach (in einer Zeile)
auf dem Bildschirm aus.
Aufgabe 1
(a) Erkläre, wie die Ausgaben im vorgegebenen Programm zustande kommen.
(b) Ergänze eine Ausgabeanweisung, die im vorgegebenen Programm zu folgender Ausgabe führt.
5 + 3 = 8
(c) Ändere die Werte von x
und y
ab.
Erzeuge mit einer geeigneten Ausgabeanweisung die folgende Ausgabe:
Variablenwerte: {x: 4; y: 7}
Eingaben mit dem input-Operator
Eingaben werden mit dem input
-Operator erzeugt.
Der input
-Operator liefert die Eingabe des Benutzers als Zeichenkette
vom Typ str
zurück. Das sieht man im folgenden Beispiel, bei dem
die beiden eingegebenen Zeichenketten zu einer Gesamtzeichenkette zusammengefügt werden.
Wenn man Zahlen eingeben möchte und mit diesen Zahlen rechnen möchte, dann führt das zu Schwierigkeiten (siehe Fehlermeldung).
Hier ist es dann erforderlich, die eingegebenen Zeichenketten zunächst in Zahlen umzuwandeln.
Das gezeigte Programm arbeitet nur dann korrekt, wenn der Benutzer auch tatsächlich
ganze Zahlen vom Typ int
eingibt.
Wenn der Benutzer im vorliegenden Programm eine Zahl vom Typ float
eingibt,
erhält er eine Fehlermeldung.
Zur Vermeidung dieser Schwierigkeit sollte der Benutzer vorab über die erwarteten Eingaben informiert werden. Beachte, dass diese Variante mit einer Vorabinformation in der Python-Onlineversion nicht so funktioniert wie erwartet. Das folgende Programm musst du also in einer Entwicklungsumgebung wie Thonny testen.
x = int(input("x (int): "))
y = int(input("y (int): "))
print(x, "-", y, "=", x-y)
Der im input
-Operator vorkommende Text wird bei der Benutzereingabe angezeigt.
Aufgabe 2
Teste das folgende Miniprogramm.
# Eingabe
zahl = float(input('Gib eine Zahl ein: '))
# Verarbeitung
zahl = zahl / 2
# Ausgabe
print('Die Hälfte der Zahl beträgt:', zahl)
(a) Wie verhält sich das Programm, wenn der Benutzer keine Zahl eingibt?
(b) Entferne im Programm den float
-Operator.
Wie verhält sich das Programm jetzt bei unterschiedlichen Benutzereigaben?
(c) Wie verhält sich das Programm, wenn man den float
-Operator durch den
int
-Operator ersetzt?