提问人:raposo 提问时间:8/10/2023 最后编辑:ewokxraposo 更新时间:8/10/2023 访问量:34
收到意外输出时如何不崩溃?[复制]
How to not crash when receiving an unexpected output? [duplicate]
问:
我正在学习 python,并且反对我创建小程序,我经常发现的一个错误是无法将答案限制为数字输入。当在我的要求中回答一个数字时,它可以正常工作,但是当除了数字之外什么都没有或任何东西是输入的输出时,当我打算再次询问时,它就会崩溃。
#EXAMPLE
def ask(x):
return int(float(input(x)))
def main():
x = ask("NUMBER FROM 0 TO 5: ")
while x > 5 or x < 0 :
x = ask("PLEASE INPUT A NUMBER FROM 0 TO 5")
print(x)
main()
#If x 输入的输出是 0 到 5 之间的数字,它工作正常,如果一个超出此限制的数字,它可以正常工作并再次询问,但是当输出什么都没有或一个 str 时它会崩溃,我怎样才能让它工作并再次询问?
答:
0赞
Muhammad Ikhwan Perwira
8/10/2023
#1
您可以对此关键字和 使用错误处理。try
except
def ask(x):
return int(float(input(x)))
def main():
while 1:
try:
x = ask("NUMBER FROM 0 TO 5: ")
while x > 5 or x < 0 :
x = ask("PLEASE INPUT A NUMBER FROM 0 TO 5")
break
except:
print("Please input valid input such as integer or float!")
print(x)
if __name__ == '__main__':
main()
请注意,如果块中的代码工作没有错误,则循环将以关键字结束。如果发生任何错误,则将执行块,向用户打印警告消息以输入有效输入。while 1:
break
try
break
catch
评论