← Back to all snippets
PYTHON

Flatten a List of Nested Lists

Convert a list containing multiple sub-lists into a single, flat list in Python using various techniques for easier data processing and manipulation.

nested_list = [[1, 2, 3], [4, 5], [6, 7, 8, 9]]

# Method 1: Using a simple for loop (explicit and clear)
flat_list_loop = []
for sublist in nested_list:
    for item in sublist:
        flat_list_loop.append(item)
print(f"Flattened (Loop): {flat_list_loop}")

# Method 2: Using list comprehension (concise and Pythonic)
flat_list_comprehension = [item for sublist in nested_list for item in sublist]
print(f"Flattened (List Comprehension): {flat_list_comprehension}")

# Method 3: Using itertools.chain (efficient for large lists)
import itertools
flat_list_itertools = list(itertools.chain.from_iterable(nested_list))
print(f"Flattened (itertools.chain): {flat_list_itertools}")

# Example with mixed types if needed (requires more complex logic for arbitrary nesting)
# For this snippet, assume only one level of nesting
How it works: Flattening a list of lists involves converting a multi-dimensional list into a single, one-dimensional list. This is useful for processing all elements sequentially. Python offers several ways to achieve this: a straightforward nested `for` loop, a more concise list comprehension, or for performance-critical scenarios, `itertools.chain.from_iterable()` which creates an efficient iterator that yields elements from each sublist.

Need help integrating this into your project?

Our team of expert developers can help you build your custom application from scratch.

Hire DigitalCodeLabs