У Python не оптимізується хвостова рекурсія, через що часто виникає
RecursionError
під час створення рекурсивних алгоритмів. Але за допомогою модуля sys
можна переглянути і навіть змінити максимальну глибину рекурсії.
import sys
sys.getrecursionlimit()
# 1000
sys.setrecursionlimit(2000)
sys.getrecursionlimit()
# 2000
Хоча робити це трохи небезпечно, оскільки кожен новий виклик займає багато пам’яті. І взагалі, краще намагатися використати не рекурсію, а звичайні цикли.
#sys // #practice // Python