Context manager timer
Implement a Timer context manager that records elapsed seconds.
Infinite counter generator
Create an infinite counter starting from `start`, stepping by `step`.
Retry decorator
Implement @retry(times=3) that retries a function on exception.
2D Vector dataclass
Implement a Vector2D dataclass with +, -, scalar *, dot product, and magnitude.
Data pipeline
Implement a Pipeline class supporting pipe chaining with the | operator.
Validated descriptor
Implement a TypedField descriptor that raises TypeError if the value is not of the expected type.
Async Context Manager Lifecycle
Build an async context manager class that tracks acquisition and ensures cleanup.
Default Argument Trap
Implement a function that safely accumulates items without the classic mutable default argument bug.
Multiprocessing Queue
Implement a function that uses a multiprocessing queue to compute factorials of a list of numbers in parallel.
TypeVar bounded generic
Learn to use TypeVar with bounds to write type-safe generic functions in Python.
Metaclass Registry
Implement a metaclass that automatically registers every subclass in a class-level registry.
Context Variable Scope
Implement a context manager that temporarily changes a global variable and restores it afterwards, even if an exception occurs.
Descriptor Property
Create a descriptor class that ensures attribute values are positive integers.
Showing 1–13 of 13 challenges · Advanced Python
Advanced Python — Python coding challenges
What you will find here
This page lists advanced python challenges — real Python problems you solve in the browser IDE with instant test feedback. Each challenge includes a clear brief, starter code, and automated checks.
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.