如何让猜数字程序仅在用户猜对数字时停止运行?
实现猜数字小游戏的循环猜测功能
你的代码目前只执行一次猜测就结束,而且随机数生成的顺序有问题——原代码是先让用户输入,再生成目标数字,这会导致用户猜测的是一个还未确定的数,逻辑颠倒了。要实现猜对才停止的功能,只需要把输入和判断逻辑放进while循环,同时调整代码顺序即可。
修改后的代码
import random # 先生成固定的目标数字,放在循环外避免每次循环重置 target_num = random.randint(1, 5) while True: # 每次循环获取用户新的猜测,增加提示语更友好 guess = int(input("请输入1-5之间的数字:")) if guess > target_num: print("猜大了") elif guess < target_num: print("猜小了") else: print("猜对了!") # 猜对后跳出循环,结束游戏 break
关键修改点
- 把随机数生成放在循环外面:确保整个游戏过程中目标数字是固定的,不会每次猜测都变。
- 使用
while True创建无限循环:直到用户猜对时,通过break语句跳出循环,停止程序。 - 每次循环内重新获取输入:让用户可以多次提交猜测。
- 添加输入提示:明确告诉用户输入范围,提升游戏体验。
内容的提问来源于stack exchange,提问作者Theo
相关产品推荐
相关产品推荐

