Polymorphism allows methods to behave differently based on the object calling them, even if they have the same name.
Example:
class Cat:
def speak(self):
print("Cat meows")
class Dog:
def speak(self):
print("Dog barks")
def animal_sound(animal):
animal.speak()
dog = Dog()
cat = Cat()
animal_sound(dog) # Output: Dog barks
animal_sound(cat) # Output: Cat meowsHere, both Dog and Cat classes define a speak() method, but the behavior depends on the object passed.
👉 Next tutorial: Python Encapsulation