Python列表神技能

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python列表神技能相关的知识,希望对你有一定的参考价值。

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列表神技能的主要内容,如果未能解决你的问题,请参考以下文章

13 个非常有用的 Python 代码片段

Python 开发神技 -- 使用管道 Pipe

Python 30秒就能学会的漂亮短代码

清华大学研发神技能:用意念回复微信

Python代码阅读(第26篇):将列表映射成字典

Windows上的的神技能,你知道几个?(Windows技巧大全)