Есть такой список
data = [
['customers/2309565764/assets/34830517871',
'customers/2309565764/assets/34827154141',
'customers/2309565764/assets/34856605170',
'customers/2309565764/assets/34830515300'
],
['customers/2309565764/assets/34830515303',
'customers/2309565764/assets/34830473309',
'customers/2309565764/assets/34830508136',
'customers/2309565764/assets/34830515336'],
['customers/2309565764/assets/20029085042',
'customers/2309565764/assets/20033811553',
'customers/2309565764/assets/20065471524',
'customers/2309565764/assets/20029089104'],
['customers/2309565764/assets/20033813263',
'customers/2309565764/assets/20065476771',
'customers/2309565764/assets/20029091753',
'customers/2309565764/assets/20029091369'],
['customers/2309565764/assets/11111',
'customers/2309565764/assets/22222',
'customers/2309565764/assets/33333',
],
['customers/2309565764/assets/20033813263',
'customers/2309565764/assets/20065476771',
'customers/2309565764/assets/20029091753',
'customers/2309565764/assets/20029091369'],
['customers/2309565764/assets/20033813263',
'customers/2309565764/assets/20065476771',
'customers/2309565764/assets/20029091753',
'customers/2309565764/assets/20029091369'],
['customers/2309565764/assets/20033813263',
'customers/2309565764/assets/20065476771',
'customers/2309565764/assets/20029091753',
'customers/2309565764/assets/20029091369'],
['customers/2309565764/assets/20033813263',
'customers/2309565764/assets/20065476771',
'customers/2309565764/assets/20029091753',
'customers/2309565764/assets/20029091369'],
['customers/2309565764/assets/20033813263',
'customers/2309565764/assets/20065476771',
'customers/2309565764/assets/20029091753',
'customers/2309565764/assets/20029091369'],
['customers/2309565764/assets/20033813263',
'customers/2309565764/assets/20065476771',
'customers/2309565764/assets/20029091753',
'customers/2309565764/assets/20029091369'],
]
В иоге получить такой же список списков, но в каждом из внутренних списков должно быть не более 20 элелементов.
result = []
transitional_data = []
for i in data:
if len(transitional_data) + len(i) <= 20:
for j in i:
transitional_data.append(j)
else:
result.append(transitional_data)
transitional_data = []
print(result)
В итоге получаю только один вложенный список, вместо 3х (два из которых будут иметь 20 элементов и один 4 остаточных)
[['customers/2309565764/assets/34830517871', 'customers/2309565764/assets/34827154141', 'customers/2309565764/assets/34856605170', 'customers/2309565764/assets/34830515300', 'customers/2309565764/assets/34830515303', 'customers/2309565764/assets/34830473309', 'customers/2309565764/assets/34830508136', 'customers/2309565764/assets/34830515336', 'customers/2309565764/assets/20029085042', 'customers/2309565764/assets/20033811553', 'customers/2309565764/assets/20065471524', 'customers/2309565764/assets/20029089104', 'customers/2309565764/assets/20033813263', 'customers/2309565764/assets/20065476771', 'customers/2309565764/assets/20029091753', 'customers/2309565764/assets/20029091369', 'customers/2309565764/assets/20033813263', 'customers/2309565764/assets/20065476771', 'customers/2309565764/assets/20029091753', 'customers/2309565764/assets/20029091369']]
Условие по вложенным спискам в data - элементы вложенного списка нельзя разделять, т.е. например первые два элемента из
['customers/2309565764/assets/34830515303',
'customers/2309565764/assets/34830473309',
'customers/2309565764/assets/34830508136',
'customers/2309565764/assets/34830515336'],
не могут попасть в первый подсписок, а остальные два в другой. Элементов в изначальных вложенных списках может быть <= 4.