4

我是编程新手,在进行输入验证时遇到问题。我的程序需要输入从 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!')
4

1 回答 1

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!')
于 2012-05-10T05:35:42.183 回答