def chunk_list_by_groups(lst, groups):
"""将列表lst拆分成包含指定组数的子列表"""
# 计算每组应该有多少个元素
n = len(lst) // groups
# 计算剩余的元素个数
remainder = len(lst) % groups
# 初始化结果列表
result = []
# 初始化起始索引
start = 0
# 循环创建子列表
for i in range(groups):
# 如果还有剩余元素,每组多分一个
if remainder > 0:
end = start + n + 1
remainder -= 1
else:
end = start + n
# 切片并添加到结果列表
result.append(lst[start:end])
start = end
return result
# 示例使用
original_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
groups = 3 # 指定组数
chunked_list = chunk_list_by_groups(original_list, groups)
# 打印结果
for i, chunk in enumerate(chunked_list):
print(f"Group {i+1}: {chunk}")