You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python随机数猜谜游戏退出逻辑BUG:输入0触发过低提示

解决随机数猜谜游戏的退出逻辑问题

嘿,这个问题很常见,咱们先搞明白为啥输入0会额外触发"Too low":

你的代码现在是先把输入转成整数,直接就去和答案比大小,但0是退出指令,根本不该参与大小判断——毕竟答案是1到99之间的随机数,0肯定比它小,所以每次输入0都会先打印"Too low",再退出循环,这就和你预期的不一样啦。

修正方案

咱们只需要在判断数字高低之前,先检查输入是不是0,如果是,直接跳出循环就行。修改后的代码如下:

import random
answer = random.randrange(1,100)
guess = 101
while int(guess) != 0 :
    guess = input('Enter a number between 1 and 100 or enter 0 to exit: ')
    guess = int(guess)
    # 优先处理退出指令,跳过大小判断
    if guess == 0:
        break
    if guess < answer :
        print('Too low')
    elif guess > answer :
        print('Too high')
    else:
        print('Correct')
        # 猜对后直接退出游戏,不用再输入0
        break
print('Game closed')

额外小优化

我还加了个细节:当用户猜对答案后,直接用break跳出循环,这样用户不用再输入0才能结束游戏,体验会更顺畅~

内容的提问来源于stack exchange,提问作者llama

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 08:38:56