Hapa utakwenda kujifunz amaana ya package, aina zake na jinsi ya kuandika 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.
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.
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
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
Unda folda na upe jina lako. Hii ndio itakuwa package yako, kwa mfano mahesabu.
Faili hili linahitajika ili Python itambue folda kama package. Linaweza kuwa tupu au lisiwe tupu kulingana na mahitaji yako.
Andika modules tofauti kwa kazi maalum ndani ya package yako.
Tumia import kuleta package au modules kutoka kwenye package yako.
Package inaweza pia kuwa na sub-packages, ambazo ni packages ndogo ndani ya package kubwa.
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
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.
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.
Jifunze zaidi, na wasiliana nasi ukiwa na App yetu. Bofya link hapo chini kuweza kuipakua.
Download NowKatika somo hili utakwenda kujifunza aina za data ambazo hutumika kwenye python. hapa utajifunza aina kuu 3 za data.
Soma Zaidi...Katika somo hili utakwend akujifunza aina mbalimbali za function ambazo tunaweza kuzitumia kwenye python.
Soma Zaidi...Katika somo hili utajifunza maana ya polymorphism na sheria za uandishi wake
Soma Zaidi...Katika somo hili tutakwenda kujifunza kuhusu string indexing. Kama tulivyojifunza kuhusu namba katika somo lililopita, basi hapa tutakwenda kucheza na string.
Soma Zaidi...Katika somo hili uatkwenda kujifunz anamna ambavyo mtu anaweza kuingiza input kwneye system
Soma Zaidi...Katika somo hili utakwend akujifunz akuhusu nadharia ya data abstraction na kazi zake kwenye OOP
Soma Zaidi...Katika somo hili utakwenda kujfnza kuhusu string method nyinginezo. Katika somo lililopita tulijifunza kuhusu string indexing.
Soma Zaidi...Katika somo hili utakwend akujifunza maana ya object, na sheria za kuandika object.
Soma Zaidi...Katika somo hili utakwend akujifunza matumizi ya for loop kwneye python
Soma Zaidi...Katika somo hili tutakwend akujifunza kwa urefu zaidi kuhusu parameter ambazo hutumika kwenye functions
Soma Zaidi...