在猜数字游戏中,可以使用try-except语句来判断用户输入的是否为数字,如果不是,就提示用户重新输入。同时,还可以使用条件语句来判断用户输入的是否在可选范围内,如果不在,同样提示用户重新输入。
示例代码:
import random
# 设置可选的数字范围
start_num = 1
end_num = 1000
# 生成随机数字
secret_num = random.randint(start_num, end_num)
# 初始化猜测次数为0
num_guesses = 0
while True:
try:
# 输入用户猜测的数字
guess = int(input("请输入一个在1到1000之间的数字:"))
# 如果猜测的数字不在可选范围内,提示用户重新输入
if guess < start_num or guess > end_num:
print("请输入一个在{}到{}之间的数字!".format(start_num, end_num))
continue
# 记录有效的猜测次数
num_guesses += 1
# 判断猜测的数字是否与随机数字一致
if guess == secret_num:
print("恭喜你猜对了!你猜了{}次。".format(num_guesses))
break
elif guess < secret_num:
print("你猜的数字太小了,再试试。")
else:
print("你猜的数字太大了,再试试。")
# 如果用户输入的不是数字,提示用户重新输入
except ValueError:
print("请输入一个数字!")
continue
在上述示例代码中,使用了try-except语句来判断用户输入的是否为数字,而使用条件语句来判断用户输入的是否在可选范围内。如果用户输入的既不是数字也不在可选范围内,程序会提示用户重新输入。如果用户输入的是数字且在可选范围内,程序会记录有效的猜测次数,并判断猜测的数字是否与随机数字一致。
下一篇:不计算重叠次数的时间范围求和