Как сдеелать рекурсивный вызов функции python?

Аватар пользователя Elena Gromova
Elena Gromova
23 сентября 2024

В Python рекурсивный вызов функции осуществляется путем вызова функции внутри самой себя. Например:

def recursion_function(n):
    if n == 0:
        return
    print(n)
    recursion_function(n-1)

recursion_function(5)

В данном примере функция recursion_function вызывает саму себя с аргументом n-1, пока n не станет равным 0. Важно помнить об условии остановки рекурсии, чтобы избежать зацикливания. Для каждого вызова функции создается новый стек вызовов, что может привести к переполнению стека при слишком большой глубине рекурсии.

Также, в Python есть возможность установить предельную глубину рекурсии с помощью sys.setrecursionlimit(limit), но изменение этого параметра без необходимости не рекомендуется.

Важно оценить плюсы и минусы использования рекурсии перед ее применением, так как она может привести к увеличению потребления памяти и приведет к увеличению времени выполнения программы.

0 0
Бесплатно
Основы Python
Теория и практика с нуля
Перейти к курсу
Поможем с выбором
Если у вас есть вопросы о формате или вы не знаете, что выбрать, оставьте свой номер — мы позвоним и ответим на все вопросы
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»