Thinking Recursively in Python

James Uejio

In this course, you’ll learn about recursion. Recursion is a powerful tool you can use to solve a problem that can be broken down into smaller variations of itself. You can create very complex recursive algorithms with only a few lines of code.

You’ll cover:

  • What recursion is
  • How to define a recursive function
  • How practical examples of recursive functions work
  • How to maintain state
  • How to optimize recursion

What’s Included:

Downloadable Resources:

Related Learning Paths:

About James Uejio

James is an avid Pythonista and creates video tutorials for Real Python. He is a web developer at Wish and also produces lo-fi hip hop and plays jazz guitar.

» More about James

Each tutorial at Real Python is created by a team of developers so that it meets our high quality standards. The team members who worked on this tutorial are:

Participant Comments

Avatar image for matteoarellano

matteoarellano on Feb. 24, 2022

This is amazing explanation. Thank you so much!

Avatar image for Ghani

Ghani on Oct. 19, 2020

Excellent course James. Thanks also for the additional explanations and learning resources offered above.

Avatar image for sion

sion on Nov. 18, 2019

Thank you for an excellent presentation and also for the real world notes you added for David. This has been very useful to me.

« Browse All Courses