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

如何将现有列表拆分为多个子列表(不使用groupby方法)

解决方案

1. 优化列表生成函数

你原来的列表生成函数可以简化,利用Python格式化字符串一次性处理所有数字,无需分两个循环:

def list_maker():
    return [f"{i:02d}" for i in range(64)]

f"{i:02d}"会自动将0-9的数字格式化为带前导零的两位字符串(比如00、01),10-63则直接显示为两位数字字符串,完美满足你的需求。

2. 将一维列表拆分为二维列表

用列表推导式就能快速把64元素的一维列表拆分成8个各含8元素的子列表:

# 生成一维列表
one_d_list = list_maker()
# 拆分为8×8的二维列表
two_d_grid = [one_d_list[i:i+8] for i in range(0, 64, 8)]

3. 验证访问方式

现在你可以通过[行索引][列索引]的方式访问元素,比如:

# 打印第一行第一列的元素(输出 '00')
print(two_d_grid[0][0])
# 打印第八行第八列的元素(输出 '63')
print(two_d_grid[7][7])

原理说明

  • 列表推导式中的range(0, 64, 8)会生成起始索引:0、8、16...56,每次取从当前索引到索引+8的切片,正好每个子列表包含8个元素。
  • 这种方法是纯Python实现,无需依赖任何第三方库,简洁高效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 03:01:00