检查输入是否为整数

时间:2014-11-09 20:16:41

标签: python

我正在编写一个程序,要求用户输入一个整数,如果它不是整数,我将打印"错误"并退出该程序。

我试过了:

userNumber = input()
try:
    val = int(userNumber)
except ValueError:
    print("Error")
    exit()

但这不起作用并且给我一个错误。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

你正在使用Python 2我认为这是你正在寻找的,如果你想要一个真正的打印功能(如Python 3),请在标题的顶部包含此导入:

from __future__ import print_function

userNumber = raw_input() # `input` in python 3, 
                         # the `input` function in '2' is actually processed as Python.
                         # equivalent to eval(raw_input(prompt))
try:
    val = int(userNumber)
except ValueError:
    print("Error") # This is a print statement without the import in Python 2, 
                   # In which case the parentheses are ignored.
    exit()

在Python 2中,inputequivalent to eval(raw_input(prompt))

答案 1 :(得分:0)

您的计划存在许多问题。缩进不正确 - tryexcept下的语句应缩进。其次,它是ValueError,而不是valueError。第三,您应该使用print()而不是printf()。最后,由于您似乎使用的是Python 2,因此您应该使用raw_input()而不是input()