【发布时间】:2017-11-17 07:17:48
【问题描述】:
sp = int(input("the dp is $"))
print(sp)
while True: #make sure they only put number
try:
int(sp)
except ValueError:
try:
float(sp)
except ValueError:
print("This is not a number. Please put a valid price.")
print("Please enter a valid number")
#This is to ensure that the customer is entering a valid variable, not too high or low
if sp <=100: print("Your price is too low. Please enter a higher and valid price.")
if sp >=10000: print("Your price is too high. Please enter a lower and valid price")
当我尝试输入过高或过低的数字时,消息错误会起作用,但如果我输入字母,程序会显示错误。
【问题讨论】:
-
你得到了哪个错误,完整的回溯是什么?以及您如何到达最后两行:您的
while循环无法结束。 -
是的,因为您使用的是
sp = int(input("the dp is $"),因此您的整个while True循环毫无意义。删除对int的调用,这就是循环和try-except的用途!
标签: python valueerror