Practice Arena

Python Coding Challenges

Write real Python in the browser. Instant feedback. From beginner to expert.

925 challenges 556 easy 323 medium 46 hard
Decorators & Context Managers easy

Once Decorator: Run a Function Only Once

Implement a decorator that caches and returns the result of the first call for subsequent calls.

decorators closures caching
+8 pts 10m
Decorators & Context Managers easy

Timing Decorator

Implement a decorator that prints the execution time of a function.

decorators time performance
+10 pts 15m
Decorators & Context Managers medium

Memoize with TTL

Implement a decorator that caches function results for a limited time, returning cached values within the TTL and recomputing after expiry.

decorators memoization caching
+20 pts 20m
Decorators & Context Managers medium

LRU Memoize

Implement an LRU memoization decorator that caches results for a fixed number of arguments.

decorators caching lru
+30 pts 25m
Decorators & Context Managers easy

Context Manager Class

Implement a context manager class that measures execution time and sets duration, with None if an exception occurred.

context-manager classes timing
+8 pts 12m
Decorators & Context Managers medium

Cached Property Manual

Implement a decorator that turns a method into a lazy cached attribute per instance.

decorator caching descriptor
+20 pts 25m
Decorators & Context Managers medium

Rate Limit Decorator

Implement a decorator that enforces a maximum number of calls per second for any function.

decorator time rate-limiting
+20 pts 20m
Decorators & Context Managers medium

Cache result decorator

Create a decorator that stores results of function calls keyed by positional arguments.

decorators memoization functools
+20 pts 20m
Decorators & Context Managers medium

Profile time decorator

Create a decorator that tracks how many times a function is called and its cumulative execution time.

decorators timing profiling
+20 pts 20m
Decorators & Context Managers easy

Print Args Decorator

Write a decorator that prints function name and arguments, then returns the original result.

decorators functions wrappers
+10 pts 10m
Decorators & Context Managers easy

File Open Context Manager

Create a class that acts as a context manager for opening a virtual file in memory.

context-manager file-io python
+10 pts 15m
Decorators & Context Managers medium

Temporary directory manager

Implement a context manager that creates a temporary directory and automatically removes it even on errors.

context-manager tempdir file-io
+20 pts 20m
Decorators & Context Managers easy

Timer Context Manager

Implement a context manager that measures execution time of a with block and stores it.

context-manager timing measurement
+10 pts 15m
Decorators & Context Managers easy

Suppress stderr manager

Implement a context manager that suppresses all output written to stderr during its block.

context-managers stderr redirect
+8 pts 10m
Decorators & Context Managers easy

Context Decorator Dual

Implement a timing decorator and a context manager that both record elapsed time in seconds.

decorator context-manager time
+10 pts 15m
Decorators & Context Managers easy

Count calls decorator

Implement a decorator that counts and reports how many times the wrapped function is called.

decorator closure function
+10 pts 15m
Decorators & Context Managers easy

Log Calls Decorator

Create a decorator that prints call details and returns the original result.

decorators logging function-wrappers
+10 pts 15m
Decorators & Context Managers medium

Context manager from generator

Implement a context manager that yields a value and ensures cleanup, using a generator-based approach.

context-manager generator contextlib
+20 pts 20m
Decorators & Context Managers medium

Benchmark decorator

Implement a benchmarking decorator that records call count and timing statistics per function.

decorators timing functools
+25 pts 25m
Decorators & Context Managers easy

Lock Context Manager

Implement a Lock class with acquire/release and context manager support.

context-manager threading lock
+8 pts 12m
Decorators & Context Managers easy

Class-based decorator with call validation

Build a class-based decorator that validates a single argument's type and logs successful invocation.

decorators class validation
+8 pts 15m

Showing 1–21 of 21 challenges · 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.