def find_values(number, base, args=[]):
if number // base != 0:
args = args + find_values(number // base, base, args+[number % base])
return args
else:
args = args + [number % base]
return args
print(find_values(120, 10))
Функция должна принять номер (как основание 10) и изменить его для соответствия заданному базовому значению.Найти базовое значение заданного числа с помощью рекурсии в python
Это лучшее, что я придумал до сих пор. Массив, который возвращен и напечатан, имеет все три значения, которые мне нужно быть там, но по какой-то причине есть дополнительный 0 в индексе 0, и массив нуждается в реверсировании, однако каждый раз, когда я пытаюсь это сделать в инструкции else, я получаю сообщение об ошибке. Есть ли способ сделать это с помощью моего текущего кода?
Хотя я понимаю принципы, лежащие в основе рекурсии, я очень затрудняюсь применить его к этой проблеме и буду признателен за любую помощь.
Спасибо, ваши решения чрезвычайно полезны! – Sev