Напишите рекурсивную функцию, которая осуществляет суммирование чисел в списке. Выводит ошибку!

Напишите рекурсивную функцию, которая осуществляет суммирование чисел в списке. Список должен быть сгенерирован из 10 чисел, каждое в диапазоне от 1 до 100.

import random

def Summa(n, Massiv, sum = 0):
      if n == 1: return sum
      sum += Massiv[n-1]
      return Summa(n-1, Massiv, sum)

def massiv_generator():
      m = []
      for i in range(10):
            m += random.randrange(1, 101)
      return m

m = massiv_generator()
n = len(m)
sum = Summa(n, m)
print("Результат",sum)

Ответы (3 шт):

Автор решения: Sergey

Тут вы пытаетесь к массиву прибавить число, такая запись само собой не является валидной. Чтобы добавить число в массив, существует метод [].append()

так что просто замените

 m += random.randrange(1, 101)

на

  m.append(random.randrange(1, 101))
→ Ссылка
Автор решения: user2240578

Задача, конечно, бесcмысленная:

>>> def summ(nums, i=0):
...     return nums[i] + summ(nums, i + 1) if i < len(nums) - 1 else nums[i]
... 
>>> summ([1,3,5])
9
>>>
→ Ссылка
Автор решения: SergFSM

укороченный вариант:

def summ(m):
    return m.pop() + summ(m) if m else 0
→ Ссылка