Помогите с задачей по разбиению чисел на слагаемые. Python

Задача: Нужно написать функцию, которая принимает число, а выводит число неповторяющихся разбиений на слагаемые. Пример: exp_sum(5) # 7 -> 1+1+1+1+1, 1+1+1+2, 1+1+3, 1+2+2, 1+4, 5, 2+3 Пытался опираясь на видеоурок написать код, который сначала выводит все разбиения, а потом их посчитать, но рекурсивная функция выдает None. Объясните, что я делаю не так, Направьте меня в нужное русло) введите сюда описание изображения

Изменено: добавил сам код

    def exp_sum(n, prefix=[]):
if n==0:
    return prefix
else:
    for i in list(range(1, n+1)):
        if not prefix:
            exp_sum(n-i, prefix + [i])
        elif prefix[-1] >= i:
            exp_sum(n-i, prefix + [i])

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