我试图创建用户需要输入值的GUI界面。如果输入错误,则会显示错误消息。否则它会保留正确的答案。但是,如果用户忘记输入值并将其留空,该怎么办?或者在没有输入任何东西的情在这种情况下如何调出错误消息?
这里只是为了保持简单,这是没有GUI的基本示例:
h = int(raw_input("Enter "))
if h >= 10:
print True
elif h < 10:
print False
else:
print "Error"
想法是,如果用户没有输入任何内容,则会打印
&#34;错误&#34 ;.但是,程序只会停止并打印以下内容:ValueError:int()的基数为10的无效文字:&#39;&#39;
那么我如何让python将空格视为值并打印&#34;错误&#34;代替?
答案 0 :(得分:1)
首先确认他们输入了有效号码:
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"
答案 1 :(得分:0)
您需要处理异常。 试试这个:
try:
h = int(raw_input("Enter "))
if h >= 10:
print True
else h < 10:
print False
except ValueError:
print "Error"
正如Zwer所提到的,错误来自于使用int()将作为字符串的用户输入转换为int,因为用户输入无效,因此失败。因此要么捕获错误,要么验证用户输入,然后将其转换为int
答案 2 :(得分:0)
执行错误操作的正常语法是使用try:except块。您将希望try块中的代码尽可能小,以便捕获特定错误并为您提供有关程序中发生的事情的反馈。
语法如下
LastRowColA = Worksheets(1).Columns(1).Cells.Find("*", SearchOrder:=xlByRows, LookIn:=xlValues, SearchDirection:=xlPrevious).Row
所以实际的代码就是。
try:
# your code here
except <some exception here>:
# what happens when it fails