python,使用if循环确保用户输入是数字,然后操作数字



我对编程很陌生,曾尝试制作一个年龄检查器代码,但确保用户输入是数字的循环不起作用。

如果输入了一个字符串,例如hello,则输入将传递.isdigit()条件,并混淆最后一个If语句。

如果您能提供任何关于如何正确构建数字检查器循环的帮助或建议,以便不会在最后一个if语句中输入字符串,我们将不胜感激。这是我的代码:

while True:
age = input('Enter age:    ')
if  age.isdigit():
print('Thank you, number entered is:', age)
else:
print('A number must be entered')
break
print('Please enter age')        
used_variable = age
if used_variable >  18:
print('user is older than 18') 

当用户插入错误的值(而不是数字(时,您正在打破循环,而不是让循环继续询问他,当用户键入正确的值时,您应该打破循环。

while True:
age = input('Enter age:    ')
if  age.isdigit():
print('Thank you, number entered is:', age)
break
else:
print('A number must be entered')
#print('Please enter age')
used_variable = int(age)
if used_variable >  18:
print('user is older than 18') 

最新更新