Итак, я занят в школе (это не фактическое задание), и мне нужно получить входные данные этой тестовой функции, которые будут помещены в эту другую переменную с помощью рекурсии.

У меня есть опыт работы с PHP уже 4 года и я просто изучаю Python, но я просто не получаю вывода этой функции, если я возвращаю имя.

def test(string): 
   name = ''
   if len(string) == 0:
       return name
   else:
       name += string[0]
       test(string[1:])

test('name')
-4
Sankro 5 Окт 2020 в 17:11

1 ответ

Лучший ответ

При каждой рекурсии имя инициализируется пустой строкой, вместо этого передайте ее как параметр.

def test(string, name = ''): 
   if len(string) == 0:
       return name
   return test(string[1:], name + string[0])

test('name')
3
Vanojx1 5 Окт 2020 в 14:15