Противоположность выравниванию списка.
Учитывая, что список и длина n возвращают список подписок длины n.
def sublist(lst, n):
sub=[] ; result=[]
for i in lst:
sub+=[i]
if len(sub)==n: result+=[sub] ; sub=[]
if sub: result+=[sub]
return result
Пример:
Если список:
[1,2,3,4,5,6,7,8]
И n:
3
Возврат:
[[1, 2, 3], [4, 5, 6], [7, 8]]
Есть ли более красноречивый/лаконичный способ?
В стороне, что предпочтительнее при добавлении списков в списки (в контексте выше):
list1+=[list2]
Или:
list1.append(list2)
Учитывая, что (согласно Программе Summerfeild "Программирование на Python 3" ), они одинаковы?
Спасибо.