How to Check if a List Is Empty in Python

There are a variety of methods that can be used to check if a list is empty in Python, including the Truth Value Testing method, the len() function and the == operator. Learn more.

Written by Isabelle Maciohsek
Published on Nov. 07, 2024
Developer reviewing python code to check if a list is empty
Image: Shutterstock / Built In
Brand Studio Logo

Considering that the Python list is one of the most used data structures, it's a given that, at some point, the need to check if a list is empty will arise. 

3 Ways to Check if a List Is Empty in Python

  1. Truth value testing method using the not operator.
  2. The len() function. 
  3. The == operator.

There are several ways to do this, however, the most straightforward is to use a method called truth value testing.

 

3 Methods to Check If a List is Empty in Python

There are a few different methods you can use to check if a list is empty. The most common  approach is using the truth value testing method with the not operator, but you can also check lists using the len() function and the == operator. Here’s how each method works.

More on PythonHow to Use Selenium for Web Scraping

1. Truth Value Testing Method

In Python, any object can be tested for truth value, including lists. In this context, lists are considered truthy if they are non-empty, meaning that at least one argument was passed to the list. So, if you want to check if a list is empty, you can simply use the not operator.

empty_list = []
non_empty_list = [1, 2, 3]

not empty_list # True
not non_empty_list # False

The not operator is a logical operator that returns the opposite of the value it is applied to. In the above code example, we can see that it returns True if the list is empty and False if the list is not empty.

2. Using the len() Function Method

While the not operator is the most straightforward and Pythonic way to check if a list is empty, there are other ways to do this. For example, you can use the len() function. This function returns the length of the list, which is 0 if the list is empty. The len() approach is especially useful if you’re working with different data structures like dictionaries or sets, as it provides a consistent way to check their size.

empty_list = []
non_empty_list = [1, 2, 3]

len(empty_list) == 0 # True
len(non_empty_list) == 0 # False
A tutorial on how to check if a list is empty in Ptyhon. | Video: Enthought

More on PythonPython Date vs. Datetime Objects Explained

3. Using the == Operator Method

Another way is to compare the list to an empty list using the == operator. This method is clear and explicit, which can make your code easier to read, especially in collaborative projects or for developers new to Python.

empty_list = []
non_empty_list = [1, 2, 3]

empty_list == [] # True
non_empty_list == [] # False

Frequently Asked Questions

There are three ways you can check if a list is empty in Python. These include:

  1. Truth value testing with the not operator.
  2. Using the len() function.
  3. Using the == operator.

The most common way to test if a list is empty in Python is to use the truth value testing method with the not operator. The len() function is best if you are working with different data structures, while the == operator makes your code easier to read. Here’s an example of the truth value testing method:

empty_list = []
non_empty_list = [1, 2, 3]

not empty_list # True
not non_empty_list # False
Explore Job Matches.