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
-
Haina jina: Ndiyo maana inaitwa "anonymous function".
-
Rahisi na mfupi: Huandikwa kwa mstari mmoja.
-
Hutumia neno kuu (lambda): Neno hili linaonyesha tunatengeneza function isiyo na jina.
-
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.
Umeionaje Makala hii.. ?
Share On:
π1 kitabu cha Simulizi π2 Simulizi za Hadithi Audio π3 Dua za Mitume na Manabii π4 Kitau cha Fiqh π5 Madrasa kiganjani π6 Bongolite - Game zone - Play free game
Post zinazofanana:
Python somo la 53: Kutengeneza HTML Form na Django View kwa ajili ya kuingiza data
Katika somo hili tutaangalia jinsi ya kutengeneza fomu ya HTML kwa ajili ya kuingiza data kwenye jedwali la MenuItem, pamoja na kutengeneza view itakayopokea data hiyo na kuihifadhi kwenye database. Pia tutaunganisha form na URL route.
Soma Zaidi...Python somo la 39: Jinsi ya Kuongeza Kurasa Nyingine Katika Django View
Katika somo hili utakwenda kujifunza zaidi kuhusu Jinsi ya Kuongeza Kurasa Nyingine Katika Django View
Soma Zaidi...PYTHON - somo la 8: method za namba zinazotumika kwenye python
Katika somo hili utakwenda kujifunza kuhusu number method yaani function zinazofanya kazi kwenye namba.
Soma Zaidi...Python somo la 26: Sheria za uandishi wa object
Katika somo hili utakwend akujifunza maana ya object, na sheria za kuandika object.
Soma Zaidi...Python somo la 35: Jinsi ya kutumia MYSQL kwenye python
Katika somo hili utajifunz akutumia database kwenye python
Soma Zaidi...Python somo la 59: Kufanya Mahesabu (Aggregations) Katika Django
Katika somo hili tutajifunza jinsi ya kutumia Django ORM kufanya mahesabu mbalimbali kama Sum, Avg, Count, Max, Min, pamoja na kupunguza idadi ya items zinazoonekana kwenye dashboard (LIMIT). Pia tutajifunza namna ya kutengeneza βdifferenceβ kati ya thamani kubwa na ndogo bila kubadilisha functions zozote ulizokwisha ziandika.
Soma Zaidi...