У нас есть список, скажем, list1 = [2, 1, 4]
Я сделал 2-й список подмножеств list1 с именем subl с помощью следующего кода.
def sub_lists(list1):
sublist = [[]]
for i in range(0, len(list1) - 1):
for j in range(i + 1, len(list1) + 1):
sub = list1[i:j]
sublist.append(sub)
return sublist
Результат, который я получил,
subl = sub_lists(list1) #[[], [2], [2, 1], [2, 1, 4], [1], [1, 4]]
Теперь я хочу создать массив сумм элементов списка, представленных в subl. Я написал следующий код, но он работает некорректно.
sum = [];
for i in range(0, len(subl) - 1):
l = len(subl[i])
t = 0
for j in range(0, l - 1):
t = t + subl[i][j]
sum.append(t)
print(sum)
Результат, который я получаю
[0, 0, 2, 3, 0]
Хотя желаемый результат должен быть
[0,2,3,7,1,5]
Думаю, что-то не так во втором для l oop. Пожалуйста, помогите!