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

Python新手求助:如何退出嵌套while循环而非仅内层循环?

解决嵌套while循环同时退出两层的问题

你的代码里有两个关键问题导致没法同时退出两层循环:

  1. 内层是while True死循环,哪怕把plus设为False,内层循环也不会自己终止,必须手动加break退出内层,外层循环才会在下一次条件判断时停止。
  2. 你写的print=("Oh merci mon ami ! Je n'avais pas l'intention de le faire de toute façon.")是语法错误——这是把print函数当成变量赋值成字符串了,之后再调用print会直接报错,得改成正常的print("...")函数调用。

我把你的法语提示翻译成了中文,同时修正了代码问题:

plus = True

while plus:
    plusChiffres = input("您的运算还需要更多数字吗?需要请输入“是”,不需要请输入“不用了,谢谢”:")

    # 更多数字逻辑
    if plusChiffres == "是":
        chiffreTrois = float(input("请输入第三个数字!:"))
        while True:
            plusChiffresBLAGUE = input("您的运算还需要更多数字吗?需要请输入“是”,不需要请输入“不用了,谢谢”:")
            if plusChiffresBLAGUE == "是":
                print("你太离谱了!这个简单小程序不会再加数字了!")
                quit()

            elif plusChiffresBLAGUE == "不用了,谢谢":
                print("哦,谢谢朋友!我本来也没打算加的。")
                plus = False
                break  # 退出内层循环,让外层循环检测plus的状态

    elif plusChiffres == "不用了,谢谢":
        plus = False  # 处理外层直接输入退出的情况

核心修正说明:

  • 在输入“不用了,谢谢”的分支里,设置plus=False后必须加break跳出内层死循环,这样外层循环才能走到条件判断步骤,发现plus已为False,从而终止。
  • 修复了print的赋值错误,避免后续调用异常。
  • 补上了外层循环直接输入退出的处理逻辑,覆盖所有场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 14:00:50