DEV Community

hrishikesh1990
hrishikesh1990

Posted on • Originally published at flexiple.com

How to create a list of lists in Python?

Do not get afraid of the name- list of lists. It is nothing but a list with other lists as an element. In this tutorial, we will learn about the different ways to create List of lists in Python.

Table of contents

What is a list of lists?

In any programming language, lists are used to store more than one item in a single variable. In Python, we can create a list by surrounding all the elements with square brackets [] and each element separated by commas. It can be used to store integer, float, string and more.

Python provides an option of creating a list within a list. If put simply, it is a nested list but with one or more lists inside as an element.

Here is an example of a list of lists to make things more clear:

[[a,b],[c,d],[e,f]] 
Enter fullscreen mode Exit fullscreen mode

Here, [a,b], [c,d], and [e,f] are separate lists which are passed as elements to make a new list. This is a list of lists.

Now we will discuss different ways to create a list of lists in Python.

Using append() function to create a list of lists in Python

What append() function does is that it combines all the lists as elements into one list. It adds a list at the end of the list.

In order to have a complete understanding of how this functions works, we will create two lists and then using the append() function we will combine them into one list

Input:

# Create 2 independent lists list_1 = [a,b,c] list_2 = [d,e,f] # Create an empty list list = [] # Create List of lists list.append(list_1) list.append(list_2) print (list) 
Enter fullscreen mode Exit fullscreen mode

Output:

[[a,b,c],[d,e,f]] 
Enter fullscreen mode Exit fullscreen mode

Create a list of lists using the list initializer in Python

Using a list initializer, we treat lists as elements. We create a list of lists by passing lists as elements. It is the easiest way to create a list of lists.

Input:

# Create 2 independent lists list_1 = [a,b,c] list_2 = [d,e,f] # Create List of lists list = [list1, list2] # Display result print(list) 
Enter fullscreen mode Exit fullscreen mode

Output:

[[a,b,c],[d,e,f]] 
Enter fullscreen mode Exit fullscreen mode

Using list comprehension to create a list of lists

List comprehension is a bit complicated yet short method to create a list of lists in Python.

Input:

list_1 = [a,b,c] list = [l1 for i in range(3)] print(list) 
Enter fullscreen mode Exit fullscreen mode

Output:

[[a,b,c],[a,b,c],[a,b,c]] 
Enter fullscreen mode Exit fullscreen mode

Using for-loop to create a list of lists in Python

You can use the for-loop to create a list of lists to create too. Here is a code snippet for better understanding.

Input:

list = [] # Create List of list for i in range(2): list.append([]) for j in range(3): list[i].append(j) print(lst) 
Enter fullscreen mode Exit fullscreen mode

Output:

[[a,b,c],[a,b,c]] 
Enter fullscreen mode Exit fullscreen mode

Closing thoughts

A list of lists is a list where each element is a list by itself. The List is one of the 4 built-in data types in Python. One can learn more about other Python data types here.

Top comments (0)