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

请求生成列表中仅包含k个元素的连续子集

生成指定长度的连续相邻子集

给定列表 L = [1,2,3,4,5,6,7] 和参数 K=2,要生成所有仅包含K个元素的连续相邻子集,可以用Python的列表推导式快速实现:

L = [1,2,3,4,5,6,7]
K = 2
result = [L[i:i+K] for i in range(len(L) - K + 1)]
print(result)

代码说明

  • range(len(L) - K + 1) 确定了循环的起始索引范围:从0到 len(L)-K(包含),确保最后一次切片能刚好取到K个元素,不会出现长度不足的情况。
  • 每个切片 L[i:i+K] 都会得到一个长度为K的连续相邻元素子集,最终结果完全符合预期:[[1,2],[2,3],[3,4],[4,5],[5,6],[6,7]]。

边界情况处理

如果K的数值大于列表长度(比如K=8,而列表只有7个元素),len(L)-K+1 会得到负数或0,此时range()返回空序列,最终结果为空列表,避免生成不符合要求的子集。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 21:25:22