我现在有这个代码:
yon = raw_input("were you running in km y or n?: ")
if yon is "y":
kilnumber = raw_input("how many kilometers?: ")
milnumber = 0
try:
float(kilnumber)
except:
print "You must enter a number"
exit()
我希望通过添加while循环在用户输入非法响应时重新询问kilnumber,使其更简单。我希望能有这样的结果:
^{pr2}$此代码无法工作,因为它在计算while循环之前发送了一条错误消息。解决方案?在
你觉得这是什么意思?在
float(kilnumber)
永远不会是ValueError
,它可以抛出一个。所以必须使用try/catch
。您可以将它放入while
循环中,该循环检查一个变量,该变量指示输入了正确的数据。在float(kilnumber)
永远不会计算为ValueError
。相反,它可能抛出一个ValueError
。你需要抓住它:有关异常和错误的详细信息,请参见tutorial。在
相关问题 更多 >
编程相关推荐