Wie lese ich 3 Zahlen ein von 1 bis 100?
Hallo ich habe eine Hausübung bekommen, für Python und ich muss 3 Zahlen einlesen von 1 bis 100. Das natürlich als Loop und falls die Zahl nicht im Intervall ist, soll "Bitte eine andere Zahl." ausgegeben werden.
Habe irgendwie sowas:
a = []
for input() in range(1,100):
a.append(int(input()))
if len(a)==3 :
break
man Bitte um hilfe ..
2 Antworten
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Python
Du kannst im Schleifenkopf nicht den input stehen haben... Das würde eher ungefähr so aussehen:
a = []
for i in range(3):
while True:
inp = input("Geben sie eine Zahl ein:")
try:
if int(inp)<=100 and int(inp) > 0:
a.append(int(inp))
break
else:
print("Bitte eine andere Zahl")
except ValueError: #Das ist optional und soll die Eingabe von Buchstaben abfangen
print("Ungültige Eingabe. Es sind nur Zahlen zulässig")
Woher ich das weiß:Hobby – Programmiere seit eineinhalb Jahren
for input() in ...
müsste mit einer Fehlermeldung enden.
for input in ...
Darnfst du nicht machen, weil du sonnst den input()- Befehl nicht mehr benutzen kannst, weil du ihn überschreibst.
also:
a = []
for Nr in range(3) :
b = int(input('bitte eine Zahl eingeben: ')
while b > 100 or b < 0 :
b = input('Diese Zahl ist nicht zulässig')
a.append(b)
Woher ich das weiß:Hobby