擅长:python、mysql、java
<p>在调用递归的同时包含对父级或某些级别信息的引用,这应该是简单而常见的。在</p>
<p>另一种方法(虽然我不喜欢)是使用pythons<code>inspect</code>模块,它允许您检查例如调用堆栈。例如:</p>
<pre><code>#!/usr/bin/env python
import inspect
def whocalled():
return inspect.stack()[2][3]
def fib(n):
print n, whocalled()
if n < 2:
return n
return fib(n - 1) + fib(n - 2)
if __name__ == '__main__':
fib(4)
</code></pre>
<p>将打印:</p>
^{pr2}$