If you have a nested list (list of lists) in Python and you want to convert it into a single list i.e. flatten a nested list, you can try writing a recursion function.
Example 1: Using recursion function:
def flattern_nested_list(input_nested_list):
flat_list = []
for element in input_nested_list:
if isinstance(element, list):
flat_list.extend(flattern_nested_list(element)) # recursion
else:
flat_list.append(element)
return flat_list
# nested list
my_nested_list = [1,2,3,4,[5,6,7,8],[[9,10],11,12]]
# calling our custom function to get flattern list
my_flat_list = flattern_nested_list(my_nested_list)
# print the result
print(my_flat_list)
Output:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

Example 2: Using List Comprehension:
my_nested_list = [
["USA", "Canada", "Mexico"],
["India", "China","Japan"],
["Australia", "Sweden", "France", "UK"]
]
flat_list = [item for sub_list in my_nested_list for item in sub_list]
print(flat_list)
Output:
['USA', 'Canada', 'Mexico', 'India', 'China', 'Japan', 'Australia', 'Sweden', 'France', 'UK']
In the above example flat_list is created using a list comprehension with nested loops. The outer loop iterates through each sub_list in the nested list, and the inner loop iterates through each item in the sub_list, appending it to the flat_list.
References:
https://docs.python.org/3/tutorial/datastructures.html#list-comprehensionsProvide Feedback For This Article
We take your feedback seriously and use it to improve our content. Thank you for helping us serve you better!
😊 Thanks for your time, your feedback has been registered!
Comments & Discussion
Facing issues? Have questions? Post them here! We're happy to help!