整数和字符串的 Python 输入验证

标签 python input

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

最佳答案

正如 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!')

关于整数和字符串的 Python 输入验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10527905/

相关文章:

python - 如何根据此数据框中的一列和另一列中的两列添加两列?

python - 从 Pandas 框架创建直方图

javascript - vs code .value 不被 intellisense 识别

javascript - 在javascript中输入字符串

python - Pylint 提示方法 'data_received' 没有被覆盖,对于 RequestHandler

python - Python 中的类字典对象,允许设置任意属性

python - 如何在Python中将postgres表列指定为变量?

html - 是否可以仅使用 CSS 动态设置输入元素的宽度?

html - AngularJS:具有相同 ng-model 和 name 属性的表单输入

c++ - 如何使输入成为我的代码的一部分?