<dl class="function"><dt id="sys.getrecursionlimit">The maximum depth of the Python interpreter stack is limited to 1000 calls by default. You can get it by import sys; sys.getrecursionlimit() and set a new value to sys.setrecursionlimit(new_value)<br>
</dt></dl><div><br></div>- Gennadiy <<a href="mailto:gennad.zlobin@gmail.com" target="_blank">gennad.zlobin@gmail.com</a>><br>
<br><br><div class="gmail_quote">On Mon, Aug 1, 2011 at 4:11 PM, jc <span dir="ltr"><<a href="mailto:chenjii@gmail.com">chenjii@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
# Get Fibonacci Value<br>
# Fibonacci(N) = Fibonacci(N-1) + Fibonacci(N-2)<br>
#<br>
# n = 900 is OK<br>
# n = 1000 is ERROR , Why<br>
#<br>
# What Wrong?<br>
#<br>
<br>
cache = []<br>
<br>
def fibo( n ):<br>
<br>
try:<br>
if cache[n] != -1:<br>
return cache[n]<br>
else:<br>
if 0 == n:<br>
r = 0<br>
elif 1 == n:<br>
r = 1<br>
else:<br>
r = fibo(n-1) + fibo(n-2)<br>
<br>
cache[n] = r<br>
return r<br>
except:<br>
print "EXCEPT: " + str(n)<br>
<br>
<br>
if __name__ == '__main__':<br>
<br>
# This n = 900 is OK<br>
# But n = 1000 is ERROR<br>
<br>
n = 900<br>
cache = range(0 , n + 1 , 1)<br>
<br>
for i in cache:<br>
cache[i] = -1<br>
<br>
print "Fibo(" + str(n) + ") = " + str(fibo(n))<br>
print "\n"<br>
print "\n"<br>
<font color="#888888"><br>
--<br>
<a href="http://mail.python.org/mailman/listinfo/python-list" target="_blank">http://mail.python.org/mailman/listinfo/python-list</a><br>
</font></blockquote></div><br>