Python somo la 19: Aina za Function

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

Aina za Functions kwenye Python

Katika somo hili, tutachambua kwa kina aina za functions kwenye Python. Functions ni msingi muhimu wa programu, zikisaidia kuandaa msimbo ulioratibiwa vizuri na kurahisisha matumizi tena.

 


 

Aina Kuu za Functions

Functions zinaweza kugawanywa katika makundi mawili makuu:

1. User-defined Functions

Hizi ni functions unazotengeneza mwenyewe kulingana na mahitaji yako. Mfano:

 

def salamu():

    print("Habari ya muda huu!")

    

salamu()

 

2. Built-in Functions

Hizi ni functions zilizojengwa ndani ya Python, kama vile print(), len(), na nyinginezo. Mfano:

print("Hii ni built-in function.")

 

 


 

Aina za Functions kulingana na Parameter na Return Type

1. Functions zisizo na Parameter wala Return

Hizi ni functions rahisi zisizohitaji pembejeo wala kurudisha thamani yoyote.

def salamu_bila_kitu():

    print("Habari! Hakuna parameter wala return.")

salamu_bila_kitu()

 

 


 

2. Functions zenye Parameter bila Return

Hizi hupokea pembejeo kutoka kwa mtumiaji lakini hazirudishi thamani.

def jumlisha(x, y):

    print(f"Jumla ya {x} na {y} ni: {x + y}")

 

jumlisha(4, 9)

 

 


 

3. Functions zisizo na Parameter lakini zenye Return

Hizi hazihitaji pembejeo, lakini hurejesha thamani.

 

def jumla_bila_input():

    x, y = 4, 6

    return x + y

 

print(f"Jumla ni: {jumla_bila_input()}")

 

 


 

4. Functions zenye Parameter na Return

Hizi hupokea pembejeo na pia hurejesha thamani.

 

def eneo(urefu, upana):

    return urefu * upana

 

print(f"Eneo ni: {eneo(6, 8)}")

 

 


 

Anonymous Functions (Lambda)

Anonymous function, pia hujulikana kama lambda, haina jina rasmi na hutumika kwa misimbo rahisi. 

Tunapotumia anonymous functions kwenye Python, tunatumia keyword lambda. Hii ni kwa sababu Python haitoi njia nyingine ya kutengeneza functions zisizo na jina moja kwa moja, tofauti na lugha zingine kama Kotlin.

Hapa kuna maelezo ya haraka kuhusu lambda functions kwenye Python:

 

Sifa za Lambda Functions

  1. Haina jina: Ndiyo maana inaitwa "anonymous function".

  2. Rahisi na mfupi: Huandikwa kwa mstari mmoja.

  3. Hutumia neno kuu (lambda): Neno hili linaonyesha tunatengeneza function isiyo na jina.

  4. Hurejesha thamani moja kwa moja: Hakuna haja ya kutumia neno return — jibu la expression linarejeshwa moja kwa moja.

 

Mfano:

jumlisha = lambda x, y: x + y

print(f"Jumla ni: {jumlisha(4, 6)}")

 

Lambda pia inaweza kutumika bila parameter:

salamu = lambda: print("Salamu sana!")

salamu()

 

 


 

Programu ya Kubadili Mita kuwa Kilomita

Tunatumia function kubadili mita kuwa kilomita kwa kugawanya thamani kwa 1000.

Programu ya kawaida:

 

def badili_mita_kuwa_km(mita):

    return mita / 1000

 

mita = float(input("Andika mita: "))

print(f"Kilomita: {badili_mita_kuwa_km(mita)}")

 

Lambda Function:

 

badili = lambda mita: mita / 1000

 

mita = float(input("Andika mita: "))

print(f"Kilomita: {badili(mita)}")

 

 


 

Scope katika Python

Scope ni wigo ambapo variable au function inaweza kufikiwa.

Variable ndani ya function (Local Scope):

Variable ikitengenezwa ndani ya function itatumika ndani ya hiyo function tu. Hii inaitwa local variable. Kwa mfano hapo chini endapo uta print variable ujumbe nje ya function utapata error.

def salamu():

    ujumbe = "Hujambo"

    print(ujumbe)

 

salamu()

print(ujumbe)  

# Hii itatoa error kwa sababu ujumbe haipo nje ya function.



Variable ya kimataifa (Global Scope):

Hii ni variable ambayo itatumika ndani ya function na nje. Variable hii inatengenezwa nje ya function kabla ya kuandika hiyo function. Kwa mfano hapo chini unawez aku print variable ujumbe popote pale.

 

ujumbe = "Hujambo"

 

def salamu():

    print(ujumbe)

 

salamu()

print(ujumbe)

 

 


 

Recursive Functions

Recursive function hujiita yenyewe, mara nyingi hutumika kutatua matatizo kama factorial.

 

def factorial(n):

    return 1 if n <= 1 else n * factorial(n - 1)

 

print(f"Factorial ya 5 ni: {factorial(5)}")

 

 


 

Main Function

main() ni sehemu kuu ambapo programu huanza utekelezaji wake. Tutakuja kuzungumzia hapa kwa undani tutakapokuwa tunajifunz akuhusu module.

 

def main():

    print("Karibu kwenye Python!")

 

if __name__ == "__main__":

    main()

 

 


 

Hitimisho

Katika somo hili, tumeelewa aina mbalimbali za functions kwenye Python, kutoka kwa zile za kawaida, zenye parameter, zenye return, hadi lambda na recursive. Katika somo linalofuata, tutajifunza matumizi ya kina ya parameters.

 

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 229

Share On:

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

Post zinazofanana:

Python somo la 14: Jinsi ya kutumia For loop

Katika somo hili utakwend akujifunza matumizi ya for loop kwneye python

Soma Zaidi...
Python somo la 24: Nini maana ya Object Oriented Programming

Hapa tunakwenda kujifunza kuhusu OOP ambapo ni miongoni mwa mitindo ya uandishi wa code

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...
Python somo la 18: Jinsi ya kuandika function

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

Soma Zaidi...
PYTHON - somo la 6: Jinsi ya kujuwa aina ya data iliyotumika

Katika somo hili utajifunza jisni ya kujuwa aina ya data iliyotumika kwenye python

Soma Zaidi...
PYTHON somo la 11: Matumizi ya comperison eperator katika python

Katika somo hili utakwenda kujifunza kuhusu operator. Hasa hapa tutakwend akujifunz akuhusu comparison operaor.

Soma Zaidi...
Python somo la 47: Jinsi ya kupokea na kuchakata fomu

Katika somo hili utakwend akujifunza jinsi ya kupokea na kuchakata fomu

Soma Zaidi...
Python somo la 38: Kubadilisha landing page ya Django Framework

Katika somo hili utakwenda kujifunza jinsi ya kubadili ukurasa wa landing page wa Django na kuweka ukurasa tunaoutaka sisi.

Soma Zaidi...
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...
Pthon somo la 41: Template Inheritance katika Django

Somo hili linazungumzia hatua ya kuunda navigation menu na kutumia template inheritance kwa njia ya kitaalamu katika Django.

Soma Zaidi...