Count occurrences of item in Python list

David Y.
jump to solution

The Problem

How do I count the occurrences of an item in a Python list?

The Solution

We can use the Python list.count method, as below:

products = ["Apple", "Orange", "Banana", "Pear", "Apple", "Banana"]

banana_count = products.count("Banana") # => 2

If we need to count the occurrences of every unique item in the list, it is more performant to use the Counter collection from the built-in Python collections library than to use the count method in a loop.

from collections import Counter
products = ["Apple", "Orange", "Banana", "Pear", "Apple", "Banana"]

element_counts = Counter(products)

This will produce a Counter object, which is a subclass of dict. For the code above, element_counts will look like this:

Counter({"Apple": 2, "Orange": 1, "Banana": 2, "Pear": 1})

Considered "not bad" by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world's best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Sentry