How to count number of instances of a class in Python?

Instances of a class mean the objects created for a particular class. A single class can have multiple objects of it. Here, we will find the count of the number of instances of a class in Python.

Approach:

  • Whenever an object is created, the constructor of that particular class is called.
  • Constructor is a function whose name is the same as that of class name and it doesn’t have any return type. A constructor is used to initialize the variables of a class.
  • Whenever a constructor is called which means a new object is created, we just have to increment a counter that will keep track of the no. of objects that particular class has.
     

Below is the implementation:

Python3




# code
class Beginner:
    
    # this is used to print the number
    # of instances of a class
    counter = 0
  
    # constructor of Beginner class
    def __init__(self):
        
        # increment
        Beginner.counter += 1
  
  
# object or instance of Beginner class
g1 = Beginner()
g2 = Beginner()
g3 = Beginner()
print(Beginner.counter)


Output:

3