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

Python多层嵌套for循环简化:寻求更简短的递归实现方案

代码简化实现方案

你提供的嵌套循环本质是生成所有4个非负整数的组合,满足组合元素之和小于10后逐行打印,下面给出递归实现及更简洁的写法:

递归实现(支持灵活调整变量个数)

def generate(remaining, var_count, current=[]):
    if var_count == 0:
        print(*current)
        return
    for val in range(remaining):
        generate(remaining - val, var_count - 1, current + [val])

# 对应原代码逻辑:总剩余上限10,变量个数4
generate(10, 4)

这个实现不需要硬写多层循环,要调整变量个数时只需要修改第二个入参即可,比如要生成5个变量的组合就把4改成5。

极简标准库实现

如果允许调用标准库,用itertools.product可以写出更短的代码:

from itertools import product
for vals in product(range(10), repeat=4):
    if sum(vals) < 10:
        print(*vals)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 08:45:03