Я хочу сделать десятично-двоичный преобразователь, используя рекурсию. Я сделал это, но моя функция (ниже) возвращает None.. Если я изменю предложение возврата на печать - оно будет работать правильно. Но я хочу вернуться сюда! В чем проблема?
def my_bin(num, result = ''):
if num == 0:
return result[::-1]
else:
result += str(num%2)
my_bin(num//2, result)
my_bin(5) # None
Не хватает одного возврата:
def my_bin(num, result = ''):
if num == 0:
return result[::-1]
else:
result += str(num%2)
return my_bin(num//2, result)
my_bin(5)
return my_bin(num//2, result)
?