while
и на for
сделать. break
, чисто вкусовщина - но сам по себе вполне годный, если всё-таки дополнить счетчиком. Без счетчика оно там может в принципе навсегда застрять в цикле. def digital_root(n):
print(f'start {n}')
n = [int(x) for x in str(n)]
n = sum(n)
if n < 10:
print(f'\treturn {n}')
return n
print(f'\tcall recursia {n}')
digital_root(n)
print('\tups, return None')
print(digital_root(329))
это минимум.