Какой по умолчанию максимальный размер глубины рекурсии в Python и как его изменить?
Уровень: Senior
Ответ
Интерпретатор CPython по умолчанию ограничивает глубину рекурсии (вложенных вызовов функций) до 1000 (это значение можно получить через sys.getrecursionlimit()). Это сделано, чтобы избежать переполнения стека. Попытка рекурсивно вызвать функцию глубже этого лимита приведёт к RecursionError. Изменить лимит можно вызовом sys.setrecursionlimit(n), но делать это следует осторожно – слишком высокий лимит может привести к крэшу интерпретатора, если стек переполнится (особенно в C).