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]
![Create flat list of nested list code example python Create flat list of nested list code example python](https://code2care.org/python/flatten-python-list/images/Create flat list of nested list code example python.png)
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-comprehensionsFacing issues? Have Questions? Post them here! I am happy to answer!
Rakesh (He/Him) has over 14+ years of experience in Web and Application development. He is the author of insightful How-To articles for Code2care.
Follow him on: X
You can also reach out to him via e-mail: rakesh@code2care.org
- How to convert int to ASCII in Python
- How to make use of SQLite Module in Python?
- Split a String into Sub-string and Parse in Python
- Python: Pandas Rename Columns with List Example
- How to run Python file from Mac Terminal
- How to Exit a Loop in Python Code
- Python: How to Plot a Histogram using Matplotlib and data as list
- MD5 Hashing in Python
- Jupyter: Safari Cant Connect to the Server localhost:8888/tree
- Fix: AttributeError: str object has no attribute decode. Did you mean: encode?[Python]
- How to Read a binary File with Python
- How to add two float numbers in Python
- Python: How to install YAML Package
- Python: How to Save Image from URL
- What is Markdown in Jupyter Notebook with Examples
- How to change the Python Default version
- 33: Python Program to send an email vid GMail
- How to comment code in Python
- How to Fix AttributeError in Python
- Fix: error: Jupyter command `jupyter-nbconvert` not found [VSCode]
- How to comment out a block of code in Python
- List of All 35 Reserved Keywords in Python Programming Language 3.11
- Import Other Python Files Examples
- Python: How to add Progress Bar in Console with Examples
- 3 Ways to convert bytes to String in Python
- Android Emulator 5.1.1 not loading on Mac OS X Android Studio - Android-Studio
- Fix: error: unclosed character literal in Java - Java
- AWS SNS CLI Command Publish Message Attributes - AWS
- Fix: MySQL: ERROR 1044 (42000): Access denied for user @localhost to database - MySQL
- jQuery : Move to top of the page - jQuery
- Reopen previously closed tab in Google Chrome - Chrome
- How to check Command Line Tools Version [Updated for Ventura] - MacOS
- When should we use Primitive or Wrapper types in Java? - Java