Python中的最大递归级别

Tou*_*ent 27 python recursion

什么是最大递归级别,我如何在Python中更改它?

Liz*_*ard 31

默认值为1000级,您可以使用模块中的setrecursionlimit功能更改它sys.

警告:

请注意,如果由于堆栈空间有限而导致更高的某些操作系统可能会遇到问题.


ofe*_*fer 6

以为我会添加一个代码示例:

import sys
sys.setrecursionlimit(100000)
Run Code Online (Sandbox Code Playgroud)

正如Lizard所指出的那样,默认值是1000,原因是警告很重要.尝试对fibonacci(10000)(返回f(n-1)+ f(n-2))的高递归限制足以关闭我的Python IDE.没有得到"达到递归深度"的警告并不意味着问题得到了解决.