Strobogrammatic number II
Given a positive integer n, return all strobogrammatic numbers of length n in ascending order.
Multiprocessing Queue
Implement a function that uses a multiprocessing queue to compute factorials of a list of numbers in parallel.
Custom iterator class
Implement a custom iterator class that repeatedly yields elements from a list up to a given number of times.
Generator Pipeline
Implement a generator function that yields only even numbers from an input list, squared.
Range-like generator
Implement a custom generator that yields numbers like Python's range but with flexible bounds.
Fibonacci Generator
Create a generator function that yields Fibonacci numbers from 0 upward until a given limit.
Prime Sieve Generator
Implement a generator function that yields prime numbers from 2 up to a specified limit, using an efficient sieve approach.
Iterator protocol class
Implement a class that follows the iterator protocol and yields squared numbers up to a given limit.
LRU Memoize
Implement an LRU memoization decorator that caches results for a fixed number of arguments.
Rate Limit Decorator
Implement a decorator that enforces a maximum number of calls per second for any function.
Divide with zero check
Write a function that safely divides two numbers, catching division by zero.
Else on try block
Implement a function that uses try-except-else to safely divide two numbers and return a result or error description.
Validate phone number
Write a function that uses regular expressions to determine if a given string is a valid US phone number.
Match Credit Card Pattern
Write a function that validates a credit card number string against a set of formatting rules.
Nth Triangular Number
Implement a function that returns the nth triangular number efficiently.
Clamp and round to nearest ten
Clamp a number between given bounds and round the result to the nearest ten with halves away from zero.
Catalan number
Implement a function that returns the nth Catalan number using dynamic programming.
Stirling number
Implement a function to compute Stirling numbers of the second kind S(n,k).
Euler Totient Function
Implement Euler's totient function φ(n) for positive integers.
Prime Factorization
Return a sorted list of prime factors of a positive integer, including repeated factors.
Count divisors
Compute the number of positive divisors of a given integer using its prime factorization.
Sum of divisors
Given an integer n, return the sum of all its positive divisors.
Perfect Number Check
Write a function that returns True if a number is perfect, i.e., equal to the sum of its proper divisors.
Abundant Number Check
Implement a function to check whether a given integer is abundant: sum of proper divisors exceeds the number.
Showing 73–96 of 184 challenges
Guide: free Python coding challenges
Practice Python by solving problems
PythonSkillset challenges are hands-on coding exercises from beginner to advanced. Open a challenge, read the problem, write Python in the split-pane editor, and run tests with Pyodide — no install required.
How to use the arena
- Pick a category — basics, algorithms, strings, and more
- Open a challenge, read the statement, and edit the starter code
- Run tests, fix failures, then try a related quiz or tutorial lesson
Challenges vs tutorials and quizzes
Challenges test what you can build under constraints. For guided teaching, use our Python tutorials. For quick checks, try quizzes or copy snippets from code samples.