List Comprehension to iterate over List of Lists
List Comprehension with List of Lists
Given a list of lists, we can create or transform it into a single list from the elements of the inner lists using List Comprehension.
Consider the list of lists is in the following format.
[
[x1, x2, x3], #list_1
[x4, x5, x6]. #list_2
]
The syntax to use List Comprehension to iterate over the elements in a list of lists is
[x for list_i in list_of_lists for x in list_i]
The above expression can be understood using the following pseudo code.
for list_i in list_of_lists
for x in list_i
x
The output of the above List Comprehension expression would be
[x1, x2, x3, x4, x5, x6]
Examples
1. Iterate over given list of lists
In the following program, we take a list of lists list_of_lists
, and use list comprehension to generate a single list with the elements from the inner lists.
Python Program
list_of_lists = [
["apple", "banana", "cherry"],
[25, "mango", 44, 10],
["red", "green", "blue"]
]
output = [x for list_i in list_of_lists for x in list_i]
print(output)
Output
['apple', 'banana', 'cherry', 25, 'mango', 44, 10, 'red', 'green', 'blue']
2. Iterate over given list of lists with string elements
Now, let us take a list of lists with string elements in the inner lists, and generate a list containing the lengths of the strings.
Python Program
list_of_lists = [
["apple", "banana", "cherry"],
["red", "green", "blue"]
]
output = [len(x) for list_i in list_of_lists for x in list_i]
print(output)
Output
[5, 6, 6, 3, 5, 4]
Summary
In this Python Examples tutorial, we learned how to use List Comprehension for a List of Lists.