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

Python中实现列表按固定数量(每组7个)有序分组

将Python列表按固定大小分组(保留原顺序)

这里有几种实用的方法实现你的需求,1400刚好是7的倍数(1400÷7=200),最终会得到200组每组7个元素的列表;如果列表长度不是7的倍数,最后一组会自动保留剩余元素:

  • 列表推导式(最简洁写法)
    直接用切片语法一步生成分组:
# 替换成你自己的原始列表
original_list = [x for x in range(1400)]
# 按每组7个元素切分
grouped_list = [original_list[i:i+7] for i in range(0, len(original_list), 7)]

原理:range(0, len(original_list), 7)会生成0、7、14...这样的起始索引,每次从原列表中截取从i到i+7的子列表,完全保留原顺序。

  • itertools迭代器方式(适合超大列表)
    如果你的列表占用内存很大,用迭代器的方式更高效,不会一次性生成所有子列表:
from itertools import islice

original_list = [x for x in range(1400)]
list_iter = iter(original_list)
grouped_list = []

while True:
    # 每次从迭代器中取7个元素
    current_group = list(islice(list_iter, 7))
    if not current_group:
        break
    grouped_list.append(current_group)
  • 手动循环(直观易理解)
    适合刚学Python的人,能清晰看到分组过程:
original_list = [x for x in range(1400)]
grouped_list = []
current_group = []

for item in original_list:
    current_group.append(item)
    # 当当前组满7个元素时,加入结果列表并重置
    if len(current_group) == 7:
        grouped_list.append(current_group)
        current_group = []
# 处理最后一组可能剩下的元素(如果列表长度不是7的倍数)
if current_group:
    grouped_list.append(current_group)

内容的提问来源于stack exchange,提问作者Turkey Once said

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 01:57:14