You are on page 1of 9

How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

1 of 9 22-04-2018, 06:30
How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

Shark Clownfish swim()


swim_backwards() skeleton()

class Shark():
def swim(self):

2 of 9 22-04-2018, 06:30
How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

print("The shark is swimming.")

def swim_backwards(self):
print("The shark cannot swim backwards, but can sink backwards.")

def skeleton(self):
print("The shark's skeleton is made of cartilage.")

class Clownfish():
def swim(self):
print("The clownfish is swimming.")

def swim_backwards(self):
print("The clownfish can swim backwards.")

def skeleton(self):
print("The clownfish's skeleton is made of bone.")

Shark Clownfish

...
sammy = Shark()
sammy.skeleton()

casey = Clownfish()
casey.skeleton()

python polymorphic_fish.py

The shark's skeleton is made of cartilage.


The clownfish's skeleton is made of bone.

3 of 9 22-04-2018, 06:30
How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

for

...
sammy = Shark()

casey = Clownfish()

for fish in (sammy, casey):


fish.swim()
fish.swim_backwards()
fish.skeleton()

sammy Shark casey Clownfish for


swim() swim_backwards() skeleton()

The shark is swimming.


The shark cannot swim backwards, but can sink backwards.
The shark's skeleton is made of cartilage.
The clownfish is swimming.
The clownfish can swim backwards.
The clownfish's skeleton is made of bone.

for sammy Shark casey


Clownfish Shark Clownfish

4 of 9 22-04-2018, 06:30
How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

in_the_pacific() fish
fish


def in_the_pacific(fish):

fish
swim() Shark Clownfish

...
def in_the_pacific(fish):
fish.swim()

Shark Clownfish
in_the_pacific()

...
def in_the_pacific(fish):
fish.swim()

sammy = Shark()

casey = Clownfish()

in_the_pacific(sammy)
in_the_pacific(casey)

The shark is swimming.


The clownfish is swimming.

fish in_the_pacific()
Shark Clownfish casey
swim() Clownfish sammy

5 of 9 22-04-2018, 06:30
How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

swim() Shark

6 of 9 22-04-2018, 06:30
How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

7 of 9 22-04-2018, 06:30
How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

duck typing polymorphism

8 of 9 22-04-2018, 06:30
How To Apply Polymorphism to Classes in Python 3 | DigitalOcean https://www.digitalocean.com/community/tutorials/how-to-apply-polym...

9 of 9 22-04-2018, 06:30

You might also like