码迷,mamicode.com
首页 > 编程语言 > 详细

Python列表神技能

时间:2016-11-23 12:58:13      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:nbsp   into   自动   csharp   mat   for   ceil   int   ret   

li = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]

#arr是被分割的list,n是每个chunk中含n元素。
def chunks(arr, n):
    return [arr[i:i+n] for i in range(0, len(arr), n)]

m = chunks(li,4)
print m

结果:

[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16], [17, 18]]


#或者让一共有m块,自动分(尽可能平均)
#split the arr into N chunks
def chunks(arr, m):
    n = int(math.ceil(len(arr) / float(m)))
    return [arr[i:i + n] for i in range(0, len(arr), n)]
m = chunks(li,4)
print m

结果:

[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18]]

 

Python列表神技能

标签:nbsp   into   自动   csharp   mat   for   ceil   int   ret   

原文地址:http://www.cnblogs.com/mosson/p/6092990.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!