Flatten a List of Lists in Python

Here are two ways to flatten a list of lists in Python:

(1) Using a List Comprehension:

`flatten_list = [i for s in list_of_lists for i in s]`

(2) Using a For Loop:

`flatten_list = []for s in list_of_lists:    for i in s:        flatten_list.append(i)`

Examples

Example 1: Flatten a list of lists in Python using a List Comprehension

Assume that you have the following list of lists in Python that contains numeric data:

`list_of_lists = [[11, 22, 33], [44, 55, 66], [77, 88, 99]]print(list_of_lists)`

Here is how the list of lists would look like:

``[[11, 22, 33], [44, 55, 66], [77, 88, 99]]``

You can then flatten the above list of lists using a List Comprehension:

`list_of_lists = [[11, 22, 33], [44, 55, 66], [77, 88, 99]]flatten_list = [i for s in list_of_lists for i in s]print(flatten_list)`

You’ll now get the flatten list:

``[11, 22, 33, 44, 55, 66, 77, 88, 99]``

Example 2: Flatten a list of lists in Python using a For Loop

Alternatively, you may use a For Loop to flatten a list of lists in Python:

`list_of_lists = [[11, 22, 33], [44, 55, 66], [77, 88, 99]]flatten_list = []for s in list_of_lists:    for i in s:        flatten_list.append(i)print(flatten_list)`

You’ll get the same flatten list:

``[11, 22, 33, 44, 55, 66, 77, 88, 99]``

Note that the same principles apply if your list of lists contains strings:

`list_of_lists = [["aa", "bb", "cc"], ["dd", "ee", "ff"], ["gg", "hh", "ii"]]flatten_list = []for s in list_of_lists:    for i in s:        flatten_list.append(i)print(flatten_list)`

As you can see, the list is now flatten:

``['aa', 'bb', 'cc', 'dd', 'ee', 'ff', 'gg', 'hh', 'ii']``