python 최대 재귀한도 깊이 설정

python으로 재귀 알고리즘 문제를 풀면 (baekjonn 1074라던가...) 'Recursion Error: maximum recursion depth exceeded in comparison' 라는 오류가 뜨게된다.
이 오류는 함수가 함수를 호출하는 재귀적 과정에서 내부적으로 너무 많은 스택이 형성되었을 때 발생된다고 한다.
python에서는 함수 호출 깊이 한도를 기본적으로 1000 으로 설정하고 있어 함수 호출이 1000을 넘어가면 위 오류가 발생하게 된다.
결론은? 한도만 늘려주면 이 오류를 해결할 수 있다는 것!
아래와 같이 함수 호출 깊이 한도를 변경해주면 된다.
import sys # 함수 호출 깊이 한도를 확인하는 방법 (기본적으로는 1000입니다.) recursion_limit = sys.getrecursionlimit() print(recursion_limit) # 함수 호출 깊이 한도 변경 sys.setrecursionlimit(10000)
Python
복사