对于上面的猜数字游戏,当用户输入的不是整数(如字母、浮点数等)时,程序会终止执行退出。要求改编该程序,当用户输入出错时给出“输入内容必须为整数”的提示,并让用户重新输入。
时间: 2024-05-05 14:16:28 浏览: 106
可以使用异常处理来实现这个要求。具体的做法是在输入语句用try-except语句包裹起来,如果用户输入的是非整数,会抛出ValueError异常,在except块中输出提示信息并让用户重新输入。
下面是改编后的代码示例:
```python
import random
answer = random.randint(1, 100)
while True:
try:
guess = int(input("请猜一个1到100之间的整数:"))
if guess == answer:
print("恭喜你,猜对了!")
break
elif guess > answer:
print("猜大了,请再试一次。")
else:
print("猜小了,请再试一次。")
except ValueError:
print("输入内容必须为整数,请重新输入。")
```
在这个代码中,我们在input语句外面加上了try-except语句,如果输入的内容不是整数,就会抛出ValueError异常。在except块中,我们输出了提示信息,并且循环会继续下去,让用户重新输入。
这样改编后,即使用户输入了非整数的内容,程序也不会终止执行,而是会给出提示信息并等待用户重新输入。
阅读全文