今天类中递归和堆栈溢出的有趣主题我想知道是否有任何方法可以增加Python中的最大递归深度?写了一个快速函数,用于使用递归找到n的阶乘:
def factorial(n):
if n == 1:
return n
else:
return n * factorial(n-1)
它可以应对阶乘(994)而不是阶乘(995)。给出的错误是:
RuntimeError: maximum recursion depth exceeded in comparison
显然可以迭代地找到更高的阶乘但是,为了论证和阴谋,最大递归深度可以增加吗?
答案 0 :(得分:10)
import sys
sys.setrecursionlimit(2000)
答案 1 :(得分:5)
import sys
iMaxStackSize = 5000
sys.setrecursionlimit(iMaxStackSize)