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
Error Handling & Exceptions easy

Safe Integer from String

Implement safe_int that converts a string to an integer, returning a default value on any failure, with support for an optional base.

exceptions parsing default-value
+10 pts 15m
Error Handling & Exceptions easy

Safe int parser

Implement safe_parse_int that converts a string to an int, returning a default value on failure.

exceptions parsing validation
+10 pts 10m
Error Handling & Exceptions easy

Safe Float Parser

Write a function that safely converts a string to a float, returning None for invalid inputs.

float exception parsing
+10 pts 10m
Error Handling & Exceptions easy

Parse JSON safely

Implement a robust JSON string parser that returns a fallback on invalid input.

json exceptions try-except
+8 pts 10m
Error Handling & Exceptions easy

Parse Error Recovery

Parse a whitespace-separated string into a list of valid integers, skipping invalid tokens.

parsing exceptions error-handling
+10 pts 15m
Regular Expressions easy

Validate phone number

Write a function that uses regular expressions to determine if a given string is a valid US phone number.

regex validation phone
+10 pts 15m
Regular Expressions easy

Match IPv4 Address

Write a function that uses a regular expression to check if a string is a valid IPv4 address.

regex validation ipv4
+8 pts 12m
Regular Expressions easy

Validate Hex Color Code

Write a function that validates hex color codes using regular expressions.

regex validation strings
+10 pts 10m
Regular Expressions easy

Multiline anchor match

Extract lines beginning with a plain-text prefix from multiline strings using Python's re module.

regex anchors multiline
+10 pts 15m
Regular Expressions easy

Match Balanced Parentheses with Regex

Write a function that uses regular expressions to determine if parentheses are balanced and properly nested.

regex strings validation
+10 pts 15m
Regular Expressions easy

Match scientific notation

Implement a function that checks if a string is in valid scientific notation.

regex validation scientific-notation
+10 pts 15m
Regular Expressions easy

Non-greedy quantifier

Implement a function that uses a non-greedy regex to extract the shortest substring between two delimiters.

regex lazy quantifier string parsing
+8 pts 10m
Bit Manipulation easy

Compress Bits Run

Write a function that compresses a binary string by representing consecutive identical bits as a count-bit pair.

bit-manipulation strings compression
+10 pts 15m
Recursion & Backtracking easy

Wildcard Match (Simple)

Write a function that checks whether a string matches a pattern with '*' and '?' wildcards.

wildcard recursion string
+10 pts 15m
Two Pointers & Sliding Window easy

Longest Substring Without Repeating Characters

Implement a function that returns the length of the longest substring without repeating characters.

strings sliding-window two-pointers
+10 pts 15m
Stacks & Queues easy

Balanced brackets in string

Check if a string of brackets is properly balanced using a stack-based approach.

stack string parsing
+10 pts 15m
Datetime & Time Calculations easy

Format date output

Parse ISO date strings and format them into a friendly US-style date output.

datetime string-formatting date-parsing
+8 pts 10m
Datetime & Time Calculations easy

Weekday from date

Write a function that returns the full English weekday name for a date string.

datetime date weekday
+10 pts 10m
Datetime & Time Calculations easy

Time Difference HH:MM

Given two times in HH:MM format, return the absolute difference as a string in HH:MM format.

datetime time string
+10 pts 10m
Datetime & Time Calculations easy

Unix timestamp to datetime

Write a function that returns a UTC datetime string from a Unix timestamp.

datetime unix-timestamp utc
+10 pts 15m
Datetime & Time Calculations easy

Datetime to Unix timestamp

Parse a datetime string and convert it to a Unix timestamp assuming UTC.

datetime parsing timestamp
+8 pts 10m
Datetime & Time Calculations easy

Quarter from date

Compute the quarter (1-4) for a date string like '2023-07-15'.

datetime date parsing
+10 pts 10m
Datetime & Time Calculations easy

Duration Human Readable

Write a function that turns a number of seconds into a human-readable duration like '2 hours, 1 minute'.

datetime strings formatting
+10 pts 15m
Datetime & Time Calculations easy

Month Start Date

Parse a date string and return the first day of its month in the same format.

datetime date-parsing formatting
+10 pts 10m

Showing 121–144 of 159 challenges · easy

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.