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

如何编写可遍历列表所有连续子范围的函数 附需求示例

def iterate_continuous_subranges(lst):
    # 遍历所有可能的左边界下标
    for i in range(len(lst) - 1):
        # 遍历所有可能的右边界切片值(Python切片左闭右开)
        for j in range(i + 2, len(lst) + 1):
            current_subrange = lst[i:j]
            # 此处替换为你需要对每个子范围执行的操作
            print(current_subrange)

测试效果

传入示例列表[1,2,3,4]调用函数:

example = [1,2,3,4]
iterate_continuous_subranges(example)

输出结果完全匹配需求:

  • [1, 2]
  • [1, 2, 3]
  • [1, 2, 3, 4]
  • [2, 3]
  • [2, 3, 4]
  • [3, 4]

逻辑说明

  • 外层循环的左边界i最大取值为列表长度减2,保证后续至少能取到2个元素
  • 内层循环的右边界j从i+2开始取值,保证子范围长度至少为2,最大取值为列表总长度,此时子范围包含从i到列表末尾的所有元素
  • 如果需要同时遍历长度为1的子范围,只需把内层循环的起始值改为i+1即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 21:36:03