Что происходит в данной рекурсии?
Задача найти сумму цифр числа, рекурсивно повторять пока результат не станет однозначным числом.
Рекурсия, это вызов функцией самой себя, вроде я сделал так. Но функция не возвращает никакого значения, в то же время, если заменить return на print() получиться правильное значение. Объясните, пожалуйста, что происходит в данной функции, почему она ничего не возвращает и почему моя рекурсия не правильна.
def digital_root(n):
lst = [int(i) for i in list(str(n))]
if len(lst) > 1:
result = sum(lst)
digital_root(result)
else:
return print(lst[0])