Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Recursion | Recursion and Lambda Functions
Python Functions Tutorial
course content

Course Content

Python Functions Tutorial

Python Functions Tutorial

1. What is a Function in Python?
2. Positional and Optional Arguments
3. Arbitrary Arguments
4. Function Return Value Specification
5. Recursion and Lambda Functions

book
Recursion

Recursion in Python is when a function calls itself. It's a useful technique for solving complex problems by breaking them down into smaller parts. The key elements of recursion are the base case (the termination condition) and the recursive case (where the function calls itself).

1234567
def print_message(message, times): if times > 0: print(message) print_message(message, times - 1) # Function call print_message("Hello, Recursion!", 3)
copy

Let's go step by step through how this recursive program works:

  1. Condition Check: if times > 0, the function proceeds. In this case, times = 3, so the condition is true;

  2. Print Message: the function prints "Hello, Recursion!";

  3. Recursive Call: the function calls itself with times - 1;

  4. Repetition: this process continues until times equals 0;

  5. Termination: when the condition times > 0 is no longer true, the recursion stops, and the program completes.

Result: The message "Hello, Recursion!" is printed three times.

Task
test

Swipe to show code editor

Complete the code for recursively generating passwords. The password should be random and consist of letters (both uppercase and lowercase) and digits. The function should generate the specified number of passwords, each having a certain length. Fill in the blanks (___) in the code:

  1. Password Length Check: in the first blank, check if the length of the current password (current_password) has reached the specified length (length). If it has, print the password and move on to generate the next one.

  2. Recursive Call: in the second blank, call the generate_passwords function with updated parameters, decreasing the password count by 1 (count - 1).

Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 5. Chapter 1
toggle bottom row

book
Recursion

Recursion in Python is when a function calls itself. It's a useful technique for solving complex problems by breaking them down into smaller parts. The key elements of recursion are the base case (the termination condition) and the recursive case (where the function calls itself).

1234567
def print_message(message, times): if times > 0: print(message) print_message(message, times - 1) # Function call print_message("Hello, Recursion!", 3)
copy

Let's go step by step through how this recursive program works:

  1. Condition Check: if times > 0, the function proceeds. In this case, times = 3, so the condition is true;

  2. Print Message: the function prints "Hello, Recursion!";

  3. Recursive Call: the function calls itself with times - 1;

  4. Repetition: this process continues until times equals 0;

  5. Termination: when the condition times > 0 is no longer true, the recursion stops, and the program completes.

Result: The message "Hello, Recursion!" is printed three times.

Task
test

Swipe to show code editor

Complete the code for recursively generating passwords. The password should be random and consist of letters (both uppercase and lowercase) and digits. The function should generate the specified number of passwords, each having a certain length. Fill in the blanks (___) in the code:

  1. Password Length Check: in the first blank, check if the length of the current password (current_password) has reached the specified length (length). If it has, print the password and move on to generate the next one.

  2. Recursive Call: in the second blank, call the generate_passwords function with updated parameters, decreasing the password count by 1 (count - 1).

Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 5. Chapter 1
Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
We're sorry to hear that something went wrong. What happened?
some-alt