Even or odd?
Return 'even' or 'odd' for an integer.
Clamp a Number to a Range
Implement a clamp function that returns a value within a specified range.
Leap Year Checker
Implement a function that decides whether a year is a leap year according to the standard Gregorian rules.
Grade from Score
Write a function that maps a numeric score to its letter grade using standard grading thresholds.
Sign of a Number
Write a function that returns the sign of a number as a string.
Max of a variable-length list
Implement a function that returns the maximum value from a list of numbers without using max().
Classify triangle by sides
Write a function that classifies a triangle based on three side lengths.
Between inclusive
Write a function that returns True if a number is between two given bounds, inclusive of the bounds.
Replace negatives with zero
Implement a function that replaces all negative numbers in a list with zero.
Leap Year Checker
Implement a function that returns True if a year is a leap year according to the Gregorian calendar rules.
Grade Calculator
Implement a function that converts a numeric score to a letter grade using a standard scale.
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.
Max of three numbers
Implement a function that returns the maximum of three numbers using comparisons.
Sign of a number
Write a function sign_of_number that returns -1 for negatives, 0 for zero, and 1 for positives.
Countdown printer
Implement a function that prints a countdown from a given number down to 1, then returns 'Go!'.
Count Positives
Count the positive numbers in a list of integers.
Is divisible by?
Create a function that returns True if a is divisible by b with no remainder, with a clear definition of edge cases.
Linear Search Implementation
Implement a linear search function that returns the index of the first occurrence of a target in a list, or -1 if not found.
Validate date format
Return True if input string is exactly YYYY-MM-DD and a real calendar date.
Palindromic Number Check
Write a function to check if a given integer is a palindrome.
Hexagonal Number
Write a function to check if a positive integer is a hexagonal number.
Clamp and round to nearest ten
Clamp a number between given bounds and round the result to the nearest ten with halves away from zero.
Perfect Number Check
Write a function that returns True if a number is perfect, i.e., equal to the sum of its proper divisors.
Sparse Number Check
Check if a non-negative integer is sparse, meaning its binary representation contains no adjacent 1 bits.
Showing 24 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
- 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.