Clamp a Number to a Range
Implement a clamp function that returns a value within a specified range.
Min of three numbers
Write a function that returns the minimum of three integers.
Sign of a Number
Write a function that returns the sign of a number as a string.
Boolean from comparison chain
Implement a function that evaluates a chain of comparisons and returns the boolean result.
Max of a variable-length list
Implement a function that returns the maximum value from a list of numbers without using max().
Between inclusive
Write a function that returns True if a number is between two given bounds, inclusive of the bounds.
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.
Find Minimum Value
Write a function that returns the minimum integer from a given list.
Hamming Distance
Implement a function that computes the Hamming distance between two strings of equal length.
Are two lists the same multiset
Write a function that checks if two lists contain the same elements with the same multiplicities, ignoring order.
Rectangle class
Implement a Rectangle class with properties, methods, and special methods for basic geometry and comparison.
Comparable mixin
Create a Comparable mixin that auto-generates all rich comparison operators from a single __lt__ method.
Heap Sort Implementation
Implement the heap sort algorithm to sort a list of comparable elements in non-decreasing order.
Shell Sort
Implement Shell sort, an in-place comparison sort that generalizes insertion sort, using a gap sequence that shrinks by half each pass.
Showing 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.