Python List count() method returns the count of how many times a given object occurs in a List using Python.
Python List count() method Syntax
Syntax: list_name.count(object)
Parameters:
- object: is the item whose count is to be returned.
Returns: Returns the count of how many times object occurs in the list.
Exception:
- TypeError: Raises TypeError If more than 1 parameter is passed in count() method.
Python List count() method Example
Since the first occurrence of character b is on the 3rd index, the output is 3. Here we are using Python count to get our count.
Python3
list2 = [ 'a' , 'a' , 'a' , 'b' , 'b' , 'a' , 'c' , 'b' ] print (list2.count( 'b' )) |
Output:
3
Count Tuple and List Elements Inside List
Count occurrences of List and Python Tuples inside a list using the Python count() method.
Python3
list1 = [ ( 'Cat' , 'Bat' ), ( 'Sat' , 'Cat' ), ( 'Cat' , 'Bat' ), ( 'Cat' , 'Bat' , 'Sat' ), [ 1 , 2 ], [ 1 , 2 , 3 ], [ 1 , 2 ] ] # Counts the number of times 'Cat' appears in list1 print (list1.count(( 'Cat' , 'Bat' ))) # Count the number of times sublist # '[1, 2]' appears in list1 print (list1.count([ 1 , 2 ])) |
Output:
2 2
Exceptions while using Python list count() method
TypeError
List count() in Python raises TypeError when more than 1 parameter is passed.
Python3
list1 = [ 1 , 1 , 1 , 2 , 3 , 2 , 1 ] # Error when two parameters is passed. print (list1.count( 1 , 2 )) |
Output:
Traceback (most recent call last): File "/home/41d2d7646b4b549b399b0dfe29e38c53.py", line 7, in print(list1.count(1, 2)) TypeError: count() takes exactly one argument (2 given)
Practical Application
Let’s say we want to count each element in a Python list and store it in another list or say Python dictionary.
Python3
# Python3 program to count the number of times # an object appears in a list using count() method lst = [ 'Cat' , 'Bat' , 'Sat' , 'Cat' , 'Mat' , 'Cat' , 'Sat' ] # To get the number of occurrences # of each item in a list print ([ [l, lst.count(l)] for l in set (lst)]) # To get the number of occurrences # of each item in a dictionary print ( dict ( (l, lst.count(l) ) for l in set (lst))) |
Output:
[['Mat', 1], ['Cat', 3], ['Sat', 2], ['Bat', 1]] {'Bat': 1, 'Cat': 3, 'Sat': 2, 'Mat': 1}