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

 

Jiunge nasi WhatsApp kupata update zetu

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

Nzuri            Mbaya            Save
Author: Rajabu image Tarehe: 1970-01-01 03:33:44 Topic: Python Main: ICT File: Download PDF Views 246

Share On:

Facebook WhatsApp
Sponsored links
👉1 Kitau cha Fiqh    👉2 Sira ya Mtume Muhammad (s.a.w)    👉3 kitabu cha Simulizi    👉4 Kitabu cha Afya    👉5 Simulizi za Hadithi Audio    👉6 Madrasa kiganjani   

Post zinazofanana:

Python somo la 51: Jinsi ya kutengeneza Model ya menu

Katika somo hili utakwend akujifunza ktengeneza model kwa ajili ya database table ya menu yetu.

Soma Zaidi...
Python somo la 25: Sheria za uandishi wa class

Katika somo hili utajifunza maana ya class, sheria za uandishi wake na mifano halisi

Soma Zaidi...
Python somo la 32: Jinsi ya kusoma mafaili

Katika somo hili utakwenda kujifunz ajinsi ya kusoma mafaili na mitindo mbalimbali ya kusoma data

Soma Zaidi...
Python somo la 29: Encaosulation kwneye python

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

Soma Zaidi...
PYTHON - somo la 9: indexing katika strinfg

Katika somo hili tutakwenda kujifunza kuhusu string indexing. Kama tulivyojifunza kuhusu namba katika somo lililopita, basi hapa tutakwenda kucheza na string.

Soma Zaidi...
Python somo la 40: Jinsi ya Kuunda Simple Navigation Menu Katika Django

Katika somo hili utajifunza Jinsi ya Kuunda Simple Navigation Menu Katika Django kwa kutumia template

Soma Zaidi...
PYTHON somo la 12: assignment operator, logical operator, identity oeprator na membership operator

Katika somo hili utakwenda kujfunza operator nyingine kama assignment operator logical, identity operator na membership operator.

Soma Zaidi...
Python somo la 33: Jinsi ya kupata taarifa za faili

Katika somo hili utakwend akujifunz anamna ya kuwez akupata taarifa zinazohusu faili

Soma Zaidi...
Python somo la 50: database kwneye django

Katika somo hili utakwenda kujifunza vipi django inaweza kuwasiliana na database, utajifunza kuusu orm na model

Soma Zaidi...
Python somo la 18: Jinsi ya kuandika function

Katika somo hili utakwend akujifunza jinsi ya kuandika function, kuweka parameter na kuitumia function

Soma Zaidi...