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

Python猜词游戏异常:超出设定3次猜测次数问题排查

猜词游戏猜测次数超标问题修复

问题根源

  1. 初始输入未计入次数:程序在进入while循环前就获取了第一次猜测,但这次猜测没有被统计到guess_count里,导致后续循环还能允许3次猜测,总共变成4次。
  2. 循环内判断逻辑顺序错误:当前逻辑是先判断guess_count < guess_limit再增加计数,当第3次错误猜测完成后,guess_count才会变成3,此时下一次循环才会触发失败提示,等于多给了一次机会。

修复方案

把初始输入移到循环内部,确保每次猜测都被正确计数;同时调整判断顺序,先检查猜测是否正确,再处理剩余次数逻辑。

修改后的代码

secret_word = "loading"
guess_count = 0
guess_limit = 3
end = False

def end_msg(msg):
    print(msg)
    retry = input("Do you want to play again? ")  
    if retry == "yes":
        global end, guess_count
        end = False
        guess_count = 0
        print("Welcome to the guessing game\nYou have 3 guesses")
    else:
        end = True

print("Welcome to the guessing game\nYou have 3 guesses")
while not end:
    guess_word = input("Enter a word: ")
    if guess_word == secret_word:
        end_msg("Correct, you win")
    else:
        guess_count += 1
        if guess_count >= guess_limit:
            end_msg("You have no more guesses, you lose!")
        else:
            print("Incorrect!")
            print(f"You have {guess_limit - guess_count} left!")

说明

  • 每次循环开始时获取用户输入,确保所有猜测都被纳入计数
  • 先判断猜测是否正确,正确则直接触发胜利逻辑
  • 错误时先增加计数,再检查是否达到次数上限,达到则触发失败提示,否则告知剩余次数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 20:05:17