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

Python编程中何时需要使用嵌套for循环?

嵌套for循环的常见使用场景

嵌套for循环本质是用来处理需要逐层遍历的多层结构,或者需要组合多组数据的场景,以下是几个最常用的场景:

  • 处理二维/多维结构化数据
    当你面对像示例里的二维列表(表格、矩阵、游戏地图格子这类数据),需要访问最内层的每个元素时,就会用到嵌套循环。比如遍历学生成绩表(每个子列表是一个学生的各科成绩),逐个取出每科成绩做统计:

    scores = [[85, 90, 78], [92, 88, 95], [70, 75, 80]]
    for student_scores in scores:
        for score in student_scores:
            print(f"单科成绩:{score}")
    
  • 生成所有可能的组合(笛卡尔积)
    如果需要把多组数据的所有搭配都列出来,嵌套循环是最直接的方式。比如搭配衣服的颜色和尺码,生成所有可选组合:

    colors = ["黑色", "白色", "灰色"]
    sizes = ["S", "M", "L", "XL"]
    for color in colors:
        for size in sizes:
            print(f"可选组合:{color} {size}")
    
  • 矩阵类运算或修改
    做矩阵的加法、乘法,或者批量修改矩阵元素时,必须逐行逐列遍历。比如给一个3x3矩阵的每个元素都加1:

    matrix = [[1,2,3], [4,5,6], [7,8,9]]
    for i in range(len(matrix)):
        for j in range(len(matrix[i])):
            matrix[i][j] += 1
    
  • 遍历多层嵌套的复杂数据
    碰到嵌套的字典、列表混合结构(比如接口返回的JSON数据),需要深入到最内层数据时,嵌套循环能帮你逐层拆解。比如遍历所有用户的所有订单商品:

    user_orders = [
        {"user_id": 1, "products": ["手机", "耳机"]},
        {"user_id": 2, "products": ["电脑", "键盘", "鼠标"]}
    ]
    for order in user_orders:
        for product in order["products"]:
            print(f"用户{order['user_id']}购买了:{product}")
    
  • 结构化文本/图形输出
    打印有规律的文本图形(比如矩形、金字塔)时,外层循环控制行数,内层循环控制每行的内容。比如打印一个4行6列的星号矩形:

    for _ in range(4):
        for _ in range(6):
            print("*", end="")
        print()
    

注意:如果嵌套层数超过3层,代码可读性会大幅下降,这时候可以考虑用列表推导式、生成器表达式,或者把内层逻辑封装成独立函数来优化。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 23:52:53