我试图使用try catch语句区分空输入和其他输入。目前,我有这个。
while True:
try:
user = int(input("Please enter an integer"))
break
except ValueError:
print("Must be an integer")
问题来自于如果用户没有输入任何东西而只按下回车键,我想要一个单独的错误陈述。但是,它仍然将该特定输入读作ValueError,并且无论我尝试什么,它都会给我上面的消息。
答案 0 :(得分:1)
您可以测试string is not empty。
while True:
try:
s = input("Please enter an integer")
if not s:
print ("Input must not be empty")
elif not s.isdigit():
print ("Input must be a digit")
else:
user = int(s)
break
except ValueError:
print("Must be an integer")