我是编程新手,在进行输入验证时遇到问题。
我的程序需要输入1到10之间的数字或字母y
,但似乎我不能为此做错误处理程序。
def checkingInput():
while True:
try:
a = input()
if 10 >= a >= 1 or a == 'y':
return value
else:
print('Invalid input!')
except NameError:
print('Name error!Please try again!')
except SyntaxError:
print('Syntax Error!Please try again!')
答案 0 :(得分:4)
正如jamylak建议将if条件更改为:
if a == 'y' or 1 <= int(a) <= 10:
程序:
def checkingInput():
while True:
try:
a = input('enter')
if a == 'y' or 1 <= int(a) <= 10:
return a
else:
print('Invalid input!')
except ValueError:
print('Value error! Please try again!')