picha

Python somo la 27: polymorphism kwneye python

Katika somo hili utajifunza maana ya polymorphism na sheria za uandishi wake

Polymorphism in Python

Polymorphism ni mojawapo ya nguzo kuu za Object-Oriented Programming (OOP). Neno hili linatoka katika maneno ya Kigiriki "poly" (nyingi) na "morph" (umbo), likimaanisha kuwa kitu kimoja kinaweza kuwa na maumbo mengi. Katika Python, polymorphism inaruhusu methods, functions, au operators kufanya kazi tofauti kulingana na muktadha.

 

Aina za Polymorphism:

  1. Method Polymorphism:

Hii inaruhusu methods zenye jina moja kutenda kazi tofauti kwenye class mbalimbali.

  1. Operator Polymorphism:

Hii inaruhusu operator moja kama + kufanya kazi tofauti kulingana na aina za data.

 


 

Polymorphism katika Methods:

Katika Python, class tofauti zinaweza kuwa na methods zenye jina moja lakini tabia tofauti.

Mfano:

class Bird:

    def intro(self):

        print("There are many types of birds.")

    

    def flight(self):

        print("Most birds can fly.")

 

class Sparrow(Bird):

    def flight(self):

        print("Sparrows can fly.")

 

class Ostrich(Bird):

    def flight(self):

        print("Ostriches cannot fly.")

 

# Objects

obj_bird = Bird()

obj_sparrow = Sparrow()

obj_ostrich = Ostrich()

 

obj_bird.intro()

obj_bird.flight()

 

obj_sparrow.intro()

obj_sparrow.flight()

 

obj_ostrich.intro()

obj_ostrich.flight()

 

 

Hapa, method flight() imebadilika kulingana na object inayoitwa, ingawa jina lake limebaki lilelile.

 


 

Operator Polymorphism:

Operator moja kama + inaweza kutenda kazi tofauti kulingana na data inayoshughulikiwa.

Mfano:

# Integer addition

print(10 + 20)  # Output: 30

 

# String concatenation

print("Hello" + " World")  # Output: Hello World

 

Hii inaonyesha jinsi operator moja inaweza kubadilika kulingana na aina za data.

 


 

Polymorphism katika Functions:

Unaweza kuwa na function moja inayofanya kazi kwa objects za class tofauti.

Mfano:

def make_sound(animal):

    animal.sound()

 

class Dog:

    def sound(self):

        print("Woof! Woof!")

 

class Cat:

    def sound(self):

        print("Meow!")

 

# Objects

dog = Dog()

cat = Cat()

 

make_sound(dog)

make_sound(cat)

 

 

Hii inaonyesha jinsi function make_sound() inavyoweza kufanya kazi na objects tofauti (dog na cat) zinazoshiriki method ya jina moja sound().

 


 

Umuhimu wa Polymorphism:

  1. Kubadilika: Inaruhusu code kuwa rahisi kubadilishwa na kutumiwa tena.

  2. Urahisi: Inapunguza ugumu wa code kwa kuruhusu matumizi ya interface moja kwa objects tofauti.

 

Mwisho:

Katika somo linalofuata tutakwend akujifunz akuhusu inheritance

 

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

       
Author: Rajabu image Tarehe: 2024-12-03 12:42:16 Topic: Python Main: Masomo File: Download PDF Views 890

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 Tafasiri ya Riyadh Swalihina     👉2 ai web app     👉3 Sira ya Mtume Muhammad (s.a.w)     👉4 Kitabu cha Afya     👉5 web hosting     👉6 kitabu cha Simulizi    

Post zinazofanana:

Python somo la 43: Kutuma Data kutoka View kwenda Template katika Django

Katika somo hili uatajifunza jinsi gani unaweza kutumia view kma logic kuuma data kwenye template

Soma Zaidi...
Python somo la 30: Data abstraction

Katika somo hili utakwend akujifunz akuhusu nadharia ya data abstraction na kazi zake kwenye OOP

Soma Zaidi...
Python somo la 46: Kutengeneza Fomu na Kuituma kwa Django Template

Katika somo hili utakwenda kujifunza kutengeneza htmk form pamoja na kuituma.

Soma Zaidi...
PYTHON - somo la 10: string method na zinavyofanya kazi

Katika somo hili utakwenda kujfnza kuhusu string method nyinginezo. Katika somo lililopita tulijifunza kuhusu string indexing.

Soma Zaidi...
Python somo la 19: Aina za Function

Katika somo hili utakwend akujifunza aina mbalimbali za function ambazo tunaweza kuzitumia kwenye python.

Soma Zaidi...
Python somo la 42: Template tag

Katika somo hili utakwenda kujifunza kuhsu Template Tag nini na kazi zake. Pia utajifunza sheria za uandishi wake.

Soma Zaidi...