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

猜数字游戏while循环后的胜负判断if语句未执行问题求助

猜数字游戏while循环后的胜负判断if语句未执行问题求助

嘿,我仔细瞅了你的猜数字游戏代码,发现导致胜负判断不执行的核心问题出在条件逻辑上!

你看,你的while循环条件是cycle < 10——意思是当cycle的值等于10的时候,循环就会停止。但后面你用来触发胜负判断的条件是if cycle > 10,这显然永远满足不了啊!毕竟每次循环里cycle只会加1,跑完10次循环后,cycle刚好是10,根本不会超过10,所以那段判断代码直接被跳过了。

给你两种简单的修改方案,选哪种都可以:

方案一:去掉多余的外层if判断

既然循环结束后cycle肯定等于10,那直接判断count的值就行:

while cycle < 10:
    FUNC()

# 循环结束后直接判断胜负
if count >= 7:
    print("You win")
else:
    print(f"You lose! Count = {count}")

方案二:修正外层if的条件

如果你非要保留外层判断,那就把条件改成cycle == 10:

while cycle < 10:
    FUNC()

if cycle == 10:
    if count >= 7:
        print("You win")
    else:
        print(f"You lose! Count = {count}")

另外补充一句:你控制台里的输出只跑了两次就结束,应该是测试的时候手动终止程序了吧?正常跑满10次循环后,修改后的代码就能正常显示胜负结果啦!

备注:内容来源于stack exchange,提问作者pyandbatdudeorsmtlikethat

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.14 17:43:10