Copy deep vs shallow
Predict and write a function that returns a copied list and inspect whether nested modification affects the original.
Broadcast Add Scalar
Add a scalar to every number in a 2D list and return a new 2D list without modifying the original.
Argmax along axis
Write a function that returns index positions of the maximum values along rows or columns of a 2D list.
Flatten nested list
Yield every integer from an arbitrarily nested list, depth-first.
Generate a Multiplication Table
Build a function that returns an n x n multiplication table as a list of lists.
Flatten Multidimensional Lists
Write a function that flattens arbitrarily nested lists of integers into a single list.
Nested get with dotted path
Implement a function that safely retrieves a value from a deeply nested dictionary using a dot-separated path, returning a default if any key is missing.
Hash map merge
Write a function that merges two dictionaries recursively, combining values and preserving structure.
Yield from delegation
Implement a generator that flattens nested iterables of any depth using `yield from`.
Flatten Nested List Iterator
Implement a class that iterates over all integers in a nested list structure in depth-first order.
Match Balanced Parentheses with Regex
Write a function that uses regular expressions to determine if parentheses are balanced and properly nested.
Decode Nested String
Implement a function that decodes a string with nested encoding patterns.
Matrix Multiply 2D
Write a function that multiplies two 2D matrices (lists of lists) and returns the product matrix.
Transpose 2D Array
Implement a function that returns the transpose of a rectangular 2D list.
Config Parser Reader
Parse a simple INI-style configuration text into a nested dictionary.
Parse YAML-like dict
Parse a simple YAML-like text with indentation into a nested dictionary.
Flatten nested JSON
Write a function that flattens nested JSON objects into a flat dictionary with dot-separated keys, handling lists and empty objects.
Unflatten JSON dict
Given a flat dictionary with keys like 'a.b.c', reconstruct the nested dictionary where each dotted segment becomes a nested level.
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–19 of 19 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.