Once Decorator: Run a Function Only Once
Implement a decorator that caches and returns the result of the first call for subsequent calls.
Timing Decorator
Implement a decorator that prints the execution time of a function.
Context Manager Class
Implement a context manager class that measures execution time and sets duration, with None if an exception occurred.
Print Args Decorator
Write a decorator that prints function name and arguments, then returns the original result.
File Open Context Manager
Create a class that acts as a context manager for opening a virtual file in memory.
Timer Context Manager
Implement a context manager that measures execution time of a with block and stores it.
Suppress stderr manager
Implement a context manager that suppresses all output written to stderr during its block.
Context Decorator Dual
Implement a timing decorator and a context manager that both record elapsed time in seconds.
Count calls decorator
Implement a decorator that counts and reports how many times the wrapped function is called.
Log Calls Decorator
Create a decorator that prints call details and returns the original result.
Lock Context Manager
Implement a Lock class with acquire/release and context manager support.
Class-based decorator with call validation
Build a class-based decorator that validates a single argument's type and logs successful invocation.
Showing 1–12 of 12 challenges · easy · Decorators & Context Managers
Decorators & Context Managers — Python coding challenges
What you will find here
This page lists decorators & context managers 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.