Ich habe ein Programm geschrieben, das eine Zufallszahl generiert, die der Benutzer erraten kann. Ich arbeite daran, alle möglichen Fehler zu finden. Der einzige, den ich nicht zu verstehen vermag, ist dies. Zu Beginn bitte ich den Benutzer, Enter zu drücken, um mit dem Spiel fortzufahren. Das Programm fängt ab, wenn es eine Zeichenfolge oder sogar Sonderzeichen und Interpunktionszeichen eingibt. Das einzige, was ich nicht verhindern kann, ist, wenn sie eine Nummer eingeben, endet das Programm. Das habe ich. Das Problem tritt in der ersten while-Schleife im try-Block auf. Irgendwelche Vorschläge oder Hilfe würden geschätzt. Vielen Dank im Voraus.Python catch int oder str
from random import randint #imports randint from random class
cont = input('Press enter to continue')
while True:
if cont != '':
try:
int(cont)
str(cont)
break
except ValueError:
print('Just hit enter')
cont = input()
continue
elif cont == '':
while True:
randNum = randint(1, 100)
print('Try guesssing a number between 1 and 100')
num = input()
while True:
try:
int(num)
break
except ValueError:
print('Please enter a number')
num = input()
int(num)
if num == randNum:
print('Good job, ' + str(num) + ' is correct.')
else:
print('Sorry, the number was ' + str(randNum) + '.')
print('Would you like to try again?')
answer = input().lower()
if answer == 'yes':
continue
elif answer == 'no':
print('Thanks for playing')
exit()
else:
while True:
print('Please type yes or no')
answer = input()
if answer == 'yes':
break
elif answer == 'no':
print('Thanks for playing.')
exit()
Ich habe versucht, auf verschiedene Arten zu arbeiten, um Fehler zu fangen, aber das funktioniert. Vielen Dank. – kfreeman04208
@ kfreeman04208 kein Problem :) –
Ist es möglich für Sie zu erklären, warum mein Weg für den Fang alles außer einer Nummer funktionierte? – kfreeman04208