Seconds to Hours Minutes Seconds
Convert total seconds into a zero-padded HH:MM:SS format.
Hello, name!
Implement a function that returns a personalized greeting for a given name.
Minutes to Hours: Time Conversion Helper
Write a function that converts minutes into a human-readable 'Xh Ym' string, with special cases for zero and whole hours.
Center a string in a width
Write a function that centers a string within a specified width by adding spaces on both sides.
Abbreviate Name
Create a function that takes a full name and returns an abbreviated version with initials and the last name.
Snake case converter
Implement a function that converts a string to snake_case according to given rules.
Error message formatter
Write a function that constructs a formatted error message from a code, an optional context, and a fallback message.
Parse Log Line
Write a function that parses a log line and returns a dictionary with timestamp, level, and message.
User Friendly Message
Given a raw user input, format it into a single clean sentence with proper sentence case and trimming.
Complex Number Class
Implement a Complex class supporting addition, subtraction, multiplication, division, equality, and string formatting.
Match Credit Card Pattern
Write a function that validates a credit card number string against a set of formatting rules.
Format date output
Parse ISO date strings and format them into a friendly US-style date output.
Duration Human Readable
Write a function that turns a number of seconds into a human-readable duration like '2 hours, 1 minute'.
Month Start Date
Parse a date string and return the first day of its month in the same format.
Serialize dict to TOML-like
Convert nested Python dicts into a simplified TOML-like string with sorted keys, type-aware formatting, and flat table sections.
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
- Pick a category — basics, algorithms, strings, and more
- Open a challenge, read the statement, and edit the starter code
- 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.