KwickClips Python · 39 sec · free
How does Python track a function calling itself?
Short answer. Each call adds a frame to the call stack.
Which call returns first?
The last one added.
The call stack
| Call | Waits for | Returns |
|---|---|---|
| fact(3) | 3 * fact(2) | 6 |
| fact(2) | 2 * fact(1) | 2 |
| fact(1) | nothing | 1 |
Remember
| Each call adds a frame |
| Last call returns first |
How does Python track a self call? Calls pile on a stack. Fact of three waits for fact of two. Fact of two waits for fact of one. Fact of one returns, and answers flow back. Each call adds a frame. The last returns first.
This clip is from the full lesson: Recursion in Python — 8 minutes, with the tables, the quick answers and the whole lesson in text.
Useful for: Programming All levels Python, Programming All levels C++
More KwickClips from this lesson
Why did my recursion never stop?38 sec
What is the base case for sum of digits?40 sec
What is Python's typical recursion limit?41 secDisclaimer. KwickAcademy is free study material for general learning and revision. Parts of it, including the voice-over, are produced with the help of AI tools and may contain errors; if you spot one, please tell us and we will correct it. Syllabus, marks and exam details follow the latest official board publications available to us, and boards can change them at any time, so always confirm against your board's official website and your school. Using this material does not guarantee any marks or result. Board names and trademarks belong to their owners; Kwickprep is not affiliated with or endorsed by any examination board. We never ask for passwords, OTPs or ID numbers. Your progress is saved only in this browser. Full disclaimer · Privacy

