← Back to all snippets
PYTHON

Flatten a List of Lists (Single Level)

Efficiently flatten a single-level nested list into a flat list using Python's list comprehensions or `itertools.chain` for improved readability and performance.

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

# Method 1: Using a list comprehension
flattened_list_comp = [item for sublist in nested_list for item in sublist]
print(f"Flattened with list comprehension: {flattened_list_comp}")

# Method 2: Using itertools.chain (more memory efficient for very large lists)
import itertools
flattened_list_chain = list(itertools.chain(*nested_list))
print(f"Flattened with itertools.chain: {flattened_list_chain}")

# Example with strings
menu_categories = [["pizza", "pasta"], ["salad", "soup"], ["dessert"]]
all_items = list(itertools.chain(*menu_categories))
print(f"All Menu Items: {all_items}")
How it works: This snippet provides two effective methods to flatten a list of lists into a single, one-dimensional list. The list comprehension method is often preferred for its readability and conciseness for moderately sized lists. For very large nested lists where memory efficiency is critical, `itertools.chain` is a powerful alternative. It iterates over each sublist and then over each item in the sublist, yielding items without creating intermediate lists.

Need help integrating this into your project?

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

Hire DigitalCodeLabs