Python - 检查多个字符串条目是否包含无效字符

时间:2011-03-26 01:23:48

标签: python

使用Python v2.x,我想让用户询问3个变量,如下所示:

def Main():
    Class_A_Input = int(raw_input('Enter Class A tickets sold: '))
    Class_B_Input = int(raw_input('Enter Class B tickets sold: '))
    Class_C_Input = int(raw_input('Enter Class C tickets sold: '))

如何检查用户输入是否为有效输入。 IE:我只想输入数字数据。在使用'chars = set('0123456789')和'WHILE'函数之前,我已经完成了一次,但似乎无法让它适用于多个输入。

感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

对非有效整数的内容调用int会引发ValueError异常。你可以抓住它。或者你想要的还有一些限制吗?

答案 1 :(得分:0)

import sys
try:
    Class_A_Input = int(raw_input('Enter Class A tickets sold: '))
except ValueError:
    print "First input was not a number."
    sys.exit(1)

此模式是否适用于您的用例?

答案 2 :(得分:0)

或者您可以省略int()的使用,并使用Class_A_input检查isdigit()

>>> "asdf1".isdigit()
False
>>> "123".isdigit()
True