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
Advanced Python medium

Context manager timer

Implement a Timer context manager that records elapsed seconds.

context-manager time
1
+22 pts 20m
Advanced Python easy

Infinite counter generator

Create an infinite counter starting from `start`, stepping by `step`.

generators itertools
+12 pts 12m
Advanced Python medium

Retry decorator

Implement @retry(times=3) that retries a function on exception.

decorators error-handling
+28 pts 25m
Advanced Python medium

2D Vector dataclass

Implement a Vector2D dataclass with +, -, scalar *, dot product, and magnitude.

dataclass OOP math
1
+20 pts 18m
Advanced Python hard

Data pipeline

Implement a Pipeline class supporting pipe chaining with the | operator.

functional OOP pipeline
1
+40 pts 35m
Advanced Python hard

Validated descriptor

Implement a TypedField descriptor that raises TypeError if the value is not of the expected type.

descriptors OOP metaclass
+40 pts 35m
Advanced Python easy

Async Context Manager Lifecycle

Build an async context manager class that tracks acquisition and ensures cleanup.

async context-manager magic-methods
+10 pts 15m
Advanced Python easy

Default Argument Trap

Implement a function that safely accumulates items without the classic mutable default argument bug.

default-arguments mutable immutability
+8 pts 10m
Advanced Python medium

Multiprocessing Queue

Implement a function that uses a multiprocessing queue to compute factorials of a list of numbers in parallel.

multiprocessing queue parallel
+25 pts 25m
Advanced Python medium

TypeVar bounded generic

Learn to use TypeVar with bounds to write type-safe generic functions in Python.

generics typevar typing
+20 pts 15m
Advanced Python medium

Metaclass Registry

Implement a metaclass that automatically registers every subclass in a class-level registry.

metaclass registry oop
+25 pts 25m
Advanced Python medium

Context Variable Scope

Implement a context manager that temporarily changes a global variable and restores it afterwards, even if an exception occurs.

context-manager global-scope scope
+20 pts 20m
Advanced Python medium

Descriptor Property

Create a descriptor class that ensures attribute values are positive integers.

descriptors oop python-advanced
+20 pts 20m

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.