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

Python嵌套for循环结合break语句无打印输出问题咨询

Python代码无打印输出的原因

核心问题是缩进错误导致内层循环逻辑完全不符合预期,具体执行逻辑拆解如下:

  • 原代码中内层for b in range(5)循环里,和if判断同级的位置多写了一个break,这意味着不管a + b ==5的条件是否成立,内层循环跑完第一次判断就会直接触发break退出。
  • range(5)生成的整数序列是0、1、2、3、4,内层循环每次启动后,b永远只会取到第一个值0,根本没有机会遍历到1、2、3、4:外层a从0到4依次取值时,第一次进入b循环拿到b=0,此时a+0的最大值为4(当a=4时),永远不可能满足等于5的条件;条件不成立就会直接触发同级的break跳出内层循环,进入下一轮a的迭代。
  • 整个执行流程中b从来没有取到4的机会,自然碰不到逻辑上预期的a=1、b=4的组合,也不会触发任何打印逻辑。

修正方案

删掉和if判断同级的多余break即可,修正后代码如下:

def fun():
    for a in range(5):
        for b in range(5):
            if a + b == 5:
                print(a,b)
                break

fun()

运行后会正常打印第一组满足条件的结果:1 4


内容的提问来源于stack exchange,提问作者Tan Yong Boon

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 14:57:26