Python somo la 22: Package kwenye Python
Hapa utakwenda kujifunz amaana ya package, aina zake na jinsi ya kuandika package.
Package kwenye Python
Maana ya Package
Package kwenye Python ni mkusanyiko wa modules zilizoandaliwa ndani ya folda moja. Package hutumika kupanga modules zinazohusiana pamoja ili kurahisisha upatikanaji, urejelevu wa msimbo, na usimamizi wa miradi mikubwa ya programu.
Kwa nini kutumia Package?
-
Kusaidia kupanga msimbo wa programu kwenye miradi mikubwa.
-
Kuruhusu kushirikisha msimbo baina ya modules kwa urahisi.
-
Kupunguza mgongano wa majina ya modules kwa kutumia namespace.
Tofauti kati ya Module na Package:
-
Module ni faili moja la .py.
-
Package ni folda yenye modules moja au zaidi.
Jinsi Package Inavyofanya Kazi
-
Package inawakilishwa na folda yenye faili moja maalum linaloitwa __init__.py.
-
__init__.py linaweza kuwa tupu au kuwa na msimbo unaohitajika kuanzisha package.
-
Python inatambua folda yenye faili la __init__.py kama package.
Mifano ya Package
Mfano Rahisi
Tengeneza package inayoitwa hesabu yenye modules mbili: eneo.py na volum.py. Zingatia kuwa ili folda liite package lazima kuwepo na faili linaloitwa _ _init_ _.py
Muundo wa Folda:
hesabu/
│
├── __init__.py
├── eneo.py
└── volum.py
-
eneo.py:
def mraba(urefu, upana):
return urefu * upana
def pembetatu(kimo, kitako):
return (kimo * kitako) / 2.0
-
volum.py:
def mchemraba(urefu):
return urefu ** 3
def silinda(r, h):
return 3.14159 * (r ** 2) * h
-
__init__.py:
-
Hili faili linaweza kuwa tupu au kuorodhesha modules zinazopatikana kwenye package. Kwa mfano:
from .eneo import mraba, pembetatu
from .volum import mchemraba, silinda
Kutumia Package
Tumia package yako kwenye programu: main.py
from hesabu.eneo import mraba, pembetatu
from hesabu.volum import mchemraba, silinda
print(f"Eneo la mraba: {mraba(4, 5)}") # 20
print(f"Eneo la pembetatu: {pembetatu(4, 6)}") # 12.0
print(f"Volum ya mchemraba: {mchemraba(3)}") # 27
print(f"Volum ya silinda: {silinda(2, 5)}") # 62.8318
Hatua kwa Hatua: Jinsi ya Kutengeneza Package
Hatua 1: Unda Folda
Unda folda na upe jina lako. Hii ndio itakuwa package yako, kwa mfano mahesabu.
Hatua 2: Unda Faili la __init__.py
Faili hili linahitajika ili Python itambue folda kama package. Linaweza kuwa tupu au lisiwe tupu kulingana na mahitaji yako.
Hatua 3: Unda Modules
Andika modules tofauti kwa kazi maalum ndani ya package yako.
Hatua 4: Leta Package Kwenye Programu
Tumia import kuleta package au modules kutoka kwenye package yako.
Mfano wa Package Inayojumuisha Sub-Packages
Package inaweza pia kuwa na sub-packages, ambazo ni packages ndogo ndani ya package kubwa.
Muundo wa Folda:
project/
│
├── hesabu/
│ ├── __init__.py
│ ├── eneo/
│ │ ├── __init__.py
│ │ ├── mraba.py
│ │ └── pembetatu.py
│ └── volum/
│ ├── __init__.py
│ ├── silinda.py
│ └── mchemraba.py
└── main.py
-
hesabu/eneo/mraba.py:
def eneo(urefu, upana):
return urefu * upana
-
hesabu/eneo/pembetatu.py:
def eneo(kimo, kitako):
return (kimo * kitako) / 2.0
-
hesabu/volum/silinda.py:
def volum(r, h):
return 3.14159 * (r ** 2) * h
-
hesabu/volum/mchemraba.py:
def volum(urefu):
return urefu ** 3
-
hesabu/__init__.py:
from .eneo import mraba, pembetatu
from .volum import silinda, mchemraba
-
Kwenye main.py:
from hesabu.eneo.mraba import eneo as eneo_mraba
from hesabu.volum.silinda import volum as volum_silinda
print(f"Eneo la mraba: {eneo_mraba(5, 4)}") # 20
print(f"Volum ya silinda: {volum_silinda(3, 7)}") # 197.92034
Faida za Packages
-
Kuweka msimbo ulioandaliwa vizuri: Inarahisisha kusimamia miradi mikubwa.
-
Kuongeza urejelevu: Modules zilizopo kwenye package zinaweza kutumika tena.
-
Namespace: Huzuia migongano ya majina ya functions au variables.
Hitimisho
Packages ni njia ya juu ya kupanga msimbo wako wa Python. Kwa kutumia folda, __init__.py, na modules, unaweza kuunda miradi inayoweza kudhibitiwa kwa urahisi na kutumia tena msimbo mara nyingi. Packages husaidia programu kuwa safi, rahisi kudhibiti, na kubadilika kwa mahitaji makubwa ya miradi ya kisasa.
Umeionaje Makala hii.. ?
Share On:
👉1 Kitabu cha Afya 👉2 Dua za Mitume na Manabii 👉3 Tafasiri ya Riyadh Swalihina 👉4 kitabu cha Simulizi 👉5 Sira ya Mtume Muhammad (s.a.w) 👉6 Madrasa kiganjani
Post zinazofanana:
Python somo la 44: Data Manipulation katika Django Templates
Katika somo hili utakwend akujifunza jinsi ya kucheza na data kuzibadili kwa namna mbali mbali kwenye template
Soma Zaidi...Python somo la 13: Kutumia condition statement - if, else, elif
Katika somo hili tutakwend akuziona aina za condition statement kwneye python na jinsi ya kuzitumia
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 21: Module katika python
Katika somo hili utakwend akujifunz amaana ya module, kazi zake, aina zake na jinsi ya kuandika modile
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...