我正在尝试创建用户需要输入值的GUI界面。如果他输入错误,就会出现错误信息。否则,它将保持正确的答案。但是,如果用户忘记输入一个值而只是将其保留为空白,该怎么办?或者没有进入任何东西就按了回车?在这种情况下,我如何调用错误消息?
为了保持简单,这里是没有GUI的基本示例:
h = int(raw_input("Enter "))
if h >= 10:
print True
elif h < 10:
print False
else:
print "Error"意思是如果用户没有输入任何东西,它就会打印。
“错误”。但是,程序只是暂停并打印以下内容: ValueError:带基数10的int()无效文本:'‘
那么,如何使python将空白视为值并打印"Error“呢?
发布于 2018-04-02 20:22:03
首先验证它们是否输入了一个有效数字:
inpt = raw_input("Enter ")
while not inpt.isdigit():
inpt = raw_input("Enter ")
inpt = int()
if h >= 10:
print True
elif h < 10:
print False
else:
print "Error"发布于 2018-04-02 20:21:52
你需要处理异常。试试这个:
try:
h = int(raw_input("Enter "))
if h >= 10:
print True
else h < 10:
print False
except ValueError:
print "Error"正如Zwer所提到的,错误来自使用int()将作为字符串的用户输入转换为int (),int()由于用户输入无效而失败。因此,要么捕获错误,要么验证用户输入,然后将其转换为int。
发布于 2018-04-02 20:24:58
对于任何有错误的操作,通常的语法是使用try: except块。您将希望try块中的代码尽可能小,这样它就可以捕获特定的错误,并就程序中发生的事情给出反馈。
语法如下
try:
# your code here
except <some exception here>:
# what happens when it fails所以实际的代码是。
try:
h = int(raw_input("Enter "))
except ValueError:
print "Error"
if h >= 10:
print True
else h < 10:
print Falsehttps://stackoverflow.com/questions/49618205
复制相似问题