Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
What is Polymorphism? | Polymorphism and Abstraction
In-Depth Python OOP
course content

Course Content

In-Depth Python OOP

In-Depth Python OOP

1. OOP Concepts
2. Inheritance
3. Encapsulation
4. Polymorphism and Abstraction
5. Magic Methods

What is Polymorphism?

Polymorphism is one of the fundamental concepts in object-oriented programming (OOP). It refers to the ability of different classes to share the same attributes and methods while exhibiting different behaviors.

Let's consider an example of polymorphism:

1234567
dct = {1: "first", 2: "second", 3: "third"} string = "Codefinity" lst = [1, 2, 3, 4, 5] print(len(dct)) # counts the keys in dictionary print(len(string)) # counts the symbols in string print(len(lst)) # counts the elements in list
copy

The len() function exhibits different behaviors depending on the type of data it operates on. This example serves as a demonstration of polymorphism in action.

Polymorphism Implementation

To implement polymorphism, we can create classes that share the same attributes and methods:

123456789101112131415161718192021222324252627
class User: role = "User" def info(self, some_value): print("This is standart user.", some_value + 100) class Admin: role = "Admin" def info(self, some_value): print("This is admin of this service.", some_value * 100) class Hacker: role = "Hacker" def info(self, some_value): print("This person can thief your data.", some_value * 0) user = User() admin = Admin() hacker = Hacker() lst = [user, admin, hacker] for item in lst: print(item.role) item.info(33)
copy

Note

Polymorphism in Python refers to the ability of objects to exhibit different behaviors while performing the same actions.

Everything was clear?

Section 4. Chapter 1
We're sorry to hear that something went wrong. What happened?
some-alt