擅长:python、mysql、java
<p>在递归函数的末尾有<code>print("After completely solving coming here.")</code>。对于每个递归,该行将执行一次</p>
<p>考虑这个简单的例子,它再现了您的问题:</p>
<pre><code>def foo(x):
print("x = {x}".format(x=x))
if x > 1:
foo(x-1)
print("Done.")
</code></pre>
<p>现在调用函数:</p>
<pre><code>>>> foo(5)
x = 5
x = 4
x = 3
x = 2
x = 1
Done.
Done.
Done.
Done.
Done.
</code></pre>
<p>如您所见,在最后一次调用<code>foo(x=0)</code>时,它将打印<code>"Done."</code>。此时,函数将返回到上一个调用,该调用还将打印<code>"Done."</code>,依此类推</p>