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
Python Basics easy

Multiplication Table Row

Return the nth row of a multiplication table as a list of 1..n products.

loops lists multiplication
+5 pts 5m
Lists & Arrays medium

Product except self

Return an array where output[i] is the product of all elements except nums[i], without using division.

arrays prefix-sum
+25 pts 20m
Lists & Arrays easy

Running Product of Integers

Given a list of integers, return a new list where each element at index i is the product of all elements from index 0 to i.

prefix product lists
+10 pts 10m
Lists & Arrays medium

Product of All Except Zeros Handling

Given a list of integers, return a list where each element is the product of all other elements, handling zeros correctly.

product arrays zero-handling
+20 pts 25m
Lists & Arrays easy

Cartesian Product Pairs

Create a function that returns the Cartesian product of two lists as a sorted list of lists.

lists tuples sorting
+8 pts 12m
Dicts & Sets easy

Pivot sales by product

Write a function that pivots sales records into a dictionary keyed by product with monthly totals.

dicts grouping aggregation
+10 pts 15m
Advanced Python medium

2D Vector dataclass

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

dataclass OOP math
1
+20 pts 18m
Iterators & Generators medium

Cartesian Product Generator

Implement a generator function that yields the Cartesian product of multiple input iterables without precomputing all results.

generators cartesian product
+20 pts 25m
Math & Number Theory easy

Dot Product of Vectors

Implement a function that returns the dot product of two numeric vectors.

math lists dot-product
+10 pts 10m
Dynamic Programming medium

Kadane Variant: Maximum Product Subarray

Implement max_product_subarray(nums) that returns the maximum product of any contiguous subarray.

kadane subarray product
+30 pts 25m
Dynamic Programming medium

Integer Break Product

Given a positive integer n, break it into at least two positive integers that sum to n and maximize their product.

integer-break dynamic-programming max-product
+25 pts 30m
Two Pointers & Sliding Window medium

Subarray product less than K

Count contiguous subarrays where the product of all elements is strictly less than a target K.

sliding-window two-pointers subarray
+25 pts 30m
Matrix & 2D Arrays easy

Matrix Multiply 2D

Write a function that multiplies two 2D matrices (lists of lists) and returns the product matrix.

matrix multiplication nested-loops
+8 pts 10m
SQL & SQLite easy

Cumulative Sum SQL

Write a SQL query to compute cumulative sales totals per product ordered by sale date.

sql window-functions running-total
+8 pts 12m
Numpy & Vectorized Computing easy

Dot product of two vectors

Return sum of element-wise products.

vectors arrays numpy-style
+10 pts 12m

Showing 1–15 of 15 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

  1. Pick a category — basics, algorithms, strings, and more
  2. Open a challenge, read the statement, and edit the starter code
  3. 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.