Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Python - Convert given list into nested list
Sometimes we need to convert list elements into individual sublists, creating a nested list structure. Python provides several approaches to achieve this transformation depending on your specific requirements.
Using List Comprehension
The simplest approach is to wrap each element in a list using list comprehension ?
days = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
print("Given list:", days)
# Convert each element to a sublist
nested_list = [[item] for item in days]
print("Nested list:", nested_list)
Given list: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] Nested list: [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]
Using map() Function
You can also use the map() function to apply list conversion to each element ?
days = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
print("Given list:", days)
# Using map to convert each element
nested_list = list(map(lambda x: [x], days))
print("Nested list:", nested_list)
Given list: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] Nested list: [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]
Using For Loop
For more control over the transformation process, use a traditional for loop ?
days = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
print("Given list:", days)
nested_list = []
for item in days:
nested_list.append([item])
print("Nested list:", nested_list)
Given list: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] Nested list: [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]
Converting String Elements to Lists
When working with comma-separated string elements, you can split them into sublists ?
data = ['Mon,Tue', 'Wed,Thu,Fri', 'Sat']
print("Given list:", data)
# Split each string by comma
nested_list = [item.split(',') for item in data]
print("Nested list:", nested_list)
Given list: ['Mon,Tue', 'Wed,Thu,Fri', 'Sat'] Nested list: [['Mon', 'Tue'], ['Wed', 'Thu', 'Fri'], ['Sat']]
Comparison
| Method | Readability | Best For |
|---|---|---|
| List Comprehension | High | Simple transformations |
| map() Function | Medium | Functional programming style |
| For Loop | High | Complex logic or debugging |
Conclusion
List comprehension offers the most concise and readable solution for converting list elements into nested lists. Use string splitting when working with delimited data, and choose for loops when you need more complex transformation logic.
