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

Boolean Mask Filter

Write a function that filters a list based on a boolean mask and returns the selected elements.

filter boolean lists
+10 pts 15m
Python Basics easy

Map, Filter, Reduce

Implement three functions using map, filter, and reduce to manipulate a list of integers.

map filter reduce
+10 pts 15m
Python Basics easy

Filter by Age

Filter a list of person dictionaries by age and return their names.

loops conditionals dictionaries
+8 pts 12m
Python Basics easy

Logging Filter

Given a list of log entries, return those matching a given severity level and containing a keyword.

strings conditionals loops
+8 pts 10m
Strings & Text easy

Remove Duplicates from String

Given a string, return a new string with each character that repeats consecutively reduced to a single occurrence.

strings loop filter
+8 pts 10m
Strings & Text easy

Extract digits from string

Write a function that extracts all digit characters from a given string, preserving their original order.

strings digits parsing
+6 pts 8m
Lists & Arrays easy

Boolean Mask Filter

Write a function that filters a list using a boolean mask and returns the matching elements as a list.

mask filter list
+8 pts 10m
Dicts & Sets easy

Values that appear once

Return a list of numbers that appear exactly once in the input list, in original order.

counting filtering order
+10 pts 15m
Data Structures & Algorithms easy

Delete Old Records

Filter a list of records by removing those with a date older than a given cutoff date.

filtering datetime lists
+8 pts 10m
Iterators & Generators easy

Generator Pipeline

Implement a generator function that yields only even numbers from an input list, squared.

generators lazy-evaluation filter
+8 pts 12m
Datetime & Time Calculations easy

Leap Years in Range

Write a function that returns a list of all leap years between two given years, inclusive.

leap-year range datetime
+7 pts 10m

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