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

调试简易猜数字游戏:修复游戏重启功能异常问题

猜数字游戏重启功能问题排查与解决

问题点分析

  • 重置游戏时未恢复status状态:用户选择'y'重新玩后,status仍为False,内层循环无法启动新一局猜数流程。
  • 退出游戏时的赋值错误:选择'n'退出时,使用了比较运算符game == False而非赋值运算符game = False,导致外层循环无法终止。

修正后的代码

import random

game = True

while game:
    secret_number = random.randint(1, 100)
    status = True  # 每局开始前重置状态
    
    while status:
        guess_number = int(input("Guess a number. "))

        if guess_number == secret_number:
            print("You won the game!!")
            another_game = input("Do you want to play once again? (y/n)")

            if another_game == 'y':
                print("OK")
                status = False  # 结束当前局
            elif another_game == 'n':
                print("Thankyou for Playing")
                game = False  # 终止外层循环,退出游戏
                status = False

        elif guess_number < secret_number:
            print("You are too low.")
        elif guess_number > secret_number:
            print("You are too high.")

关键修改说明

  • 将status的初始化移到外层循环内部,确保每局游戏开始时状态都是True。
  • 退出游戏时修正为game = False,正确终止外层循环。
  • 调整逻辑,用户选择重新玩时直接设置status = False结束当前局,外层循环会自动开启新局并重置状态。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 14:57:27