1、生成想要块的生成器。
defchunks(lst,n): """Yieldsuccessiven-sizedchunksfromlst.""" foriinrange(0,len(lst),n): yieldlst[i:i+n] importpprint pprint.pprint(list(chunks(range(10,75),10))) [[10,11,12,13,14,15,16,17,18,19], [20,21,22,23,24,25,26,27,28,29], [30,31,32,33,34,35,36,37,38,39], [40,41,42,43,44,45,46,47,48,49], [50,51,52,53,54,55,56,57,58,59], [60,61,62,63,64,65,66,67,68,69], [70,71,72,73,74]]
2、如果使用的是Python2,则应使用xrange()代替range()。
defchunks(lst,n): """Yieldsuccessiven-sizedchunksfromlst.""" foriinxrange(0,len(lst),n): yieldlst[i:i+n]
3、可以简单地使用列表推导而不是编写函数。
尽管将这样的操作封装在命名函数中,以便代码更容易理解。
[lst[i:i+n]foriinrange(0,len(lst),n)] Python2版本: [lst[i:i+n]foriinxrange(0,len(lst),n)]
以上就是python列表分成大小均匀块的方法,希望对大家有所帮助。更多Python学习指路:Python基础教程