相关疑难解决方法(0)

将列表拆分为n组的替代方法

假设我有一个任意长度的列表,L:

L = list(range(1000))
Run Code Online (Sandbox Code Playgroud)

将该列表拆分成组的最佳方法是n什么?这是我能够提出的最好的结构,并且由于某种原因,它不觉得它是完成任务的最佳方式:

n = 25
for i in range(0, len(L), n):
    chunk = L[i:i+25]
Run Code Online (Sandbox Code Playgroud)

是否有内置功能,我缺少这个?

编辑:早期的答案是将我的for循环重新编写为listcomp,这不是主意; 你基本上以不同的形式给我我的确切答案.我正在看是否有另一种方法可以实现这一点,就像.split列表上的假设一样.我也在昨晚写的一些代码中使用它作为生成器:

def split_list(L, n):
    assert type(L) is list, "L is not a list"
    for i in range(0, len(L), n):
        yield L[i:i+n]
Run Code Online (Sandbox Code Playgroud)

python

54
推荐指数
5
解决办法
5万
查看次数

标签 统计

python ×1