How to Use Python super() function — pythonpip.com

Parvez Alam
2 min readDec 29, 2022

The Python super() is a built-in Python function that returns objects represented in the parent's class. The object of the superclass that allows you to call that superclass's methods.

The super() function allows you to access a superclass's functions if your subclass is descended from it. You can use it to get inherited methods from either the parent class or a child class.

Python super

Python super() method allows you to call methods of the superclass in your subclass.

Syntax of super() in Python

Return: Return a proxy object which represents the parent’s class.

The super() method can also take two parameters:

  • Subclass
  • An object that is an instance of that subclass.

Advantages of super() function in Python

The super() function allows you to switch between superclasses with little to no code modification, saving you from having to rewrite those methods in your subclass.

It offers a much more flexible and abstract way to initialize classes.

How to call a super() function in Python 3

Create a parent and child class, inherit the parent class to the child class, and then use the super() method from the child class to use a super() function in Python. First, we will add the super function to a standard class definition.

#test.py class MyParentClass(): def __init__(self): pass class SubClass(MyParentClass): def __init__(self): super()

Simple super Class Example

Let’s create a simple base class and inherit into a child class.

#test.py class Employee(): def __init__(self, name, age): self.name = name self.age = age class Dept(Employee): def __init__(self, name, age, dept_name): super().__init__(name, age) self.dept_name = dept_name emp = Dept('adam', 23, 'IT') print('The name is:', emp.name) print('The age is:', emp.age) print('The dept name is:', emp.dept_name)

In the example above, we defined two classes: an Employee base class and a Dept. derived class.

The base class has two properties that we’ve defined, and the derived class has three.

The derived class has three attributes, two of which are derived from the base class and one of which is an independent feature. The child or derived class also contains a model property. The other two are acquired from a computer of the lowest class.

Because of the super() function, we can still access all of the properties of the base class even if we simply construct an object of the derived class.

Output:

The name is: adam The age is: 23 The dept name is: IT ** Process exited - Return Code: 0 ** Press Enter to exit terminal

References:

official documentation

Originally published at https://pythonpip.com on December 29, 2022.

--

--

Parvez Alam

Hey, I am Parvez Alam. A software developer since 2009. I love learning and sharing knowledge. https://www.phpflow.com/