python 一行代码实现对列表的快速等分

定义如下函数chunk,参数l为要划分的列表,chunk_size为每个划分的大小。可以看到,函数中只有一行代码,即可实现该功能。

import math

def chunk(l,chunk_size):
    return list(map(lambda x:l[x*chunk_size:(x+1)*chunk_size],range(0,math.ceil(len(l)/chunk_size)))

l=[0,1,2,3,4,5,6,7,8,9]
chunk(l,3)
[out]:
[[0, 1, 2], [3, 4, 5], [6, 7, 8], [9]]

chunk(l,4)
[out]:
[[0, 1, 2, 3], [4, 5, 6, 7], [8, 9]]

 

你可能感兴趣的:(python编程)