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
Matrix & 2D Arrays medium

Pacific Atlantic Matrix DFS

Given a matrix of heights, return cells that can reach both Pacific and Atlantic oceans using a DFS approach.

dfs matrix traversal
+20 pts 20m
Matrix & 2D Arrays medium

Regions Cut by Slashes

Given a grid of slashes, count the number of connected regions formed by the slashes and the grid borders.

grid dfs union-find
+30 pts 30m
Datetime & Time Calculations easy

Days in month

Write a function that returns the number of days in a given month and year, correctly handling leap years.

datetime calendar leap-year
+8 pts 10m
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

Days Between Dates

Write a function that returns the number of days between two given dates.

datetime date-arithmetic calendar
+10 pts 15m
Datetime & Time Calculations easy

Add Days to Date

Given a date in YYYY-MM-DD format and an integer number of days, return the resulting date in the same format.

datetime date arithmetic
+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

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
Datetime & Time Calculations easy

Age in years months days

Given birth and reference dates, return age as a dictionary with years, months, days.

datetime date arithmetic age calculation
+10 pts 15m
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

Business days between

Calculate the number of business days (Mon-Fri) between two dates, inclusive of both endpoints.

datetime weekdays date-arithmetic
+10 pts 15m
Datetime & Time Calculations easy

Next Weekday Finder

Write a function that returns the next weekday date after a given date.

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

Previous Weekday Finder

Given a date, return the date of the immediately preceding weekday (Monday–Friday).

datetime date weekday
+10 pts 15m
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

Week Number ISO

Given a date, return its ISO 8601 week number (1–53) without using datetime.isocalendar().

datetime iso date
+8 pts 12m
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

Schedule conflict check

Write a function that takes a list of time intervals and returns True if any two overlap.

datetime intervals overlap
+10 pts 15m
Datetime & Time Calculations medium

Julian Day Number Converter

Implement two functions to convert between Gregorian calendar dates and Julian Day Numbers using a standard formula.

datetime date-arithmetic algorithms
+20 pts 20m
Datetime & Time Calculations easy

Month End Date

Implement a function that returns the last day of the month for a given year and month.

datetime calendar leap-year
+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
Datetime & Time Calculations easy

Daylight saving check

Given a date in the US, determine if daylight saving time starts or ends on that day.

datetime timezones dst
+8 pts 10m
Datetime & Time Calculations medium

Easter Date Calculator

Implement a function that returns the date of Easter Sunday for a given year using the Gregorian computus algorithm.

datetime date easter
+20 pts 25m

Showing 841–864 of 925 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.