How can I check if a Python list is empty?

Python, List · Jan 15, 2023

Checking the emptiness of a Python list is rather easy using the len() function. Yet, there's another technique that works on all types of sequences and collections. This is based on the truth value testing of the sequence or collection itself.

By default, a Python object is considered truthy unless its class defines either a __bool__() or a __len__() method that returns False or 0 respectively. Python's built-in objects, such as tuples, lists, strings, dictioners, sets and ranges all implement a __len__() method. This menas that truth value testing of these objects will return False if they are empty, and True otherwise.

Based on these observations, all you need to check if a Python list is empty is to test its truth value, using the not operator.

x = []
not x # True

y = [1, 2]
not y # False

Written by Angelos Chalaris

I'm Angelos Chalaris, a JavaScript software engineer, based in Athens, Greece. The best snippets from my coding adventures are published here to help others learn to code.

If you want to keep in touch, follow me on GitHub.

More like this