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

颜色猜谜游戏while循环实现问题求助

颜色猜谜游戏代码修复方案

你的代码存在几个关键问题,导致无法正常运行:

  • if-else语句块写在了while循环外部,循环会无限执行,永远不会触发猜对的判断逻辑,且break语句在循环外会引发语法错误
  • 作业要求初始猜测次数变量赋值为1,你设置成了0,不符合要求
  • 猜错后的重新输入逻辑错误,没有整合到循环流程里,且没有正确累加猜测次数

以下是修正后的代码,完全符合作业要求:

correct_guess = 'red'
guess_count = 1  # 按照作业要求初始赋值为1

while True:  # 用无限循环替代inf的判断,更简洁直观
    guess = input('Guess a color: ')
    
    if guess == correct_guess:
        print(f'Congratulations! You won! It took you this many attempts: {guess_count}')
        break  # 猜对后跳出循环
    else:
        print('Incorrect, guess again')
        guess_count += 1  # 猜错后累加猜测次数

关键修改说明:

  • 调整guess_count初始值为1,匹配作业步骤1的要求
  • 用while True实现无限循环,替代原代码中float('inf')的复杂判断,逻辑更清晰
  • 将猜对/猜错的判断逻辑移到循环内部,确保每次输入后立即验证结果
  • 猜错时先提示错误信息,再累加次数,严格遵循作业步骤3的流程
  • 使用f-string格式化输出语句,比原代码的字符串拼接写法更简洁易读

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 22:20:45