Skip to content
Foxipa
Code Completion 4 Challenges

Complete the Python recursion code

Practice base cases, recursive steps, and recursive traversal.

Intermediate ~7 min read

Challenge 1

Write a recursive countdown that stops at zero.

python Your answer
def countdown(n):
    

countdown(3)

Press Ctrl⌘Enter to check your answer

Challenge 2

Return n factorial recursively, with 0! equal to 1.

python Your answer
def factorial(n):
    

print(factorial(5))

Press Ctrl⌘Enter to check your answer

Challenge 3

Finish the recursive total for nested lists.

python Your answer
def total(items):
    result = 0
    for item in items:
        if isinstance(item, list):
            result += 
        else:
            result += item
    return result

print(total([1, [2, [3]]]))

Press Ctrl⌘Enter to check your answer

Challenge 4

Return base raised to a non-negative exponent recursively.

python Your answer
def power(base, exponent):
    

print(power(3, 4))

Press Ctrl⌘Enter to check your answer