မာတိကာ[ဖျောက်][ရှိုး]
ဤသင်ခန်းစာသည် Python ရှိ modules များနှင့် packages များကို ကျယ်ကျယ်ပြန့်ပြန့် ပြသမည်ဖြစ်ပါသည်။
၎င်းတို့သည် သင့်ကုဒ်ကို ဖိုင်များပုံစံဖြင့် စုစည်းရန် နည်းလမ်းတစ်ခုဖြစ်ပြီး အကယ်၍ သင်သည် Python ဖြင့် ဝဘ်အက်ပလီကေးရှင်းများကို တည်ဆောက်ရန် ရည်ရွယ်ပါက အမှန်တကယ် အရေးကြီးပါသည်။
modules
Python ရှိ module တစ်ခုသည် အခြေခံအားဖြင့် ကျွန်ုပ်တို့၏ကုဒ်များကို ဖိုင်များအဖြစ်စုစည်းရန် ကျွန်ုပ်တို့အသုံးပြုသည့် python ကုဒ်အချို့ပါသည့် ဖိုင်တစ်ခုဖြစ်သည်။ စူပါမားကတ်တစ်ခုရှိ ကဏ္ဍများကဲ့သို့ တွေးကြည့်ပါ။ သင်စူပါမားကတ်တစ်ခုသို့သွားသောအခါ သစ်သီးများ၊ ဟင်းသီးဟင်းရွက်များ၊ သန့်ရှင်းရေးသုံးပစ္စည်းများစသည်ဖြင့် ကွဲပြားသောကဏ္ဍများရှိသည်။ ထုတ်ကုန်အားလုံးပါသည့်အပိုင်းကို သင်မတွေ့ပါ။
၎င်းသည် ပရိုဂရမ်းမင်းတွင် တူညီသော သဘောတရားဖြစ်သည်။ ကျွန်ုပ်တို့၏ကုဒ်အားလုံးကို main.py တွင် လုပ်ဆောင်ချက်များနှင့် အတန်းများအားလုံးဖြင့် ရေးသားမည့်အစား၊ ကျွန်ုပ်တို့၏ကုဒ်ကို ဖိုင်များစွာအဖြစ် ခွဲထားသည်။ ဖိုင်တစ်ခုစီကို module တစ်ခုအဖြစ်ရည်ညွှန်းသည်။ ယင်းကြောင့်၊ ကျွန်ုပ်တို့၏ကုဒ်သည် ပိုမိုကောင်းမွန်စွာ ဖွဲ့စည်းတည်ဆောက်ထားနိုင်ရုံသာမက ကျွန်ုပ်တို့၏ကုဒ်ကိုလည်း ပြန်လည်အသုံးပြုနိုင်စွမ်းရှိပါသည်။ ဥပမာတစ်ခုအားဖြင့်ကြည့်ကြပါစို့။
အလေးချိန်ပေါင်မှ ကီလိုဂရမ်သို့ ပြောင်းခြင်းနှင့် အပြန်အလှန်အားဖြင့် လုပ်ဆောင်ချက်နှစ်ခုကို သတ်မှတ်ကြပါစို့။
def lbs_to_kg(weight):
return weight * 0.45
def kg_to_lbs(weight):
return weight / 0.45
ယခု၊ ကျွန်ုပ်တို့သည် ဤလုပ်ဆောင်ချက်နှစ်ခုကိုယူ၍ ၎င်းတို့ကို " converters" ဟုခေါ်သော သီးခြား module တစ်ခုတွင်ထားနိုင်ပြီး၊ ထို့နောက် ၎င်းကို ဤ converter လုပ်ဆောင်ချက်များ လိုအပ်သည့် မည်သည့်ပရိုဂရမ်သို့ တင်သွင်းနိုင်သည်။ ဒါလုပ်နည်းလေးပြပါရစေ။
ကျွန်ုပ်တို့၏ ပရောဂျက်အကန့်ကိုဖွင့်ပြီး ပရောဂျက်ကို right-click နှိပ်ပြီး ဖိုင်အသစ်တစ်ခုထည့်ကြပါစို့။ ဤဖိုင်ကို “Converters.py” ဟု ခေါ်ပါမည်။
ယခု မူရင်းဖိုင်မှ ကုဒ်ကို ကူးယူပြီး “Converters.py” ထဲသို့ ကူးထည့်ပါ။
ဤအရာဖြင့်၊ ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့၏ ပင်မ module ကို ရှင်းလင်းခဲ့ပြီး၊ ၎င်းသည် မတူညီသောလုပ်ဆောင်ချက်များဖြင့် ဖောင်းပွနေမည်မဟုတ်ပေ။ ကျွန်ုပ်တို့သည် အတန်းများနှင့်အတူ လုပ်ဆောင်ချက်များကို ပိုမိုရေးသားလာသည်နှင့်အမျှ ၎င်းတို့ကို ၎င်းတို့၏ သက်ဆိုင်ရာ မော်ဂျူးများတွင် ထည့်သွင်းထားပါသည်။ မော်ဂျူးတစ်ခုတွင် ဆက်စပ်လုပ်ဆောင်ချက်များနှင့် အတန်းများအားလုံး ပါဝင်သင့်သည်။ ယခု ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့၏အက်ပ်မော်ဂျူးသို့ converters module ကို တင်သွင်းလိုပါသည်။ ဒီလိုလုပ်ဖို့၊ ရေးပါ။ import converters
Extension မပါသော ထိပ်တွင် “.py”။
နည်းလမ်းများနှင့် ဆင်တူသော အစက်အော်ပရေတာကို အသုံးပြုခြင်းဖြင့် မော်ဂျူးတစ်ခု၏ အဖွဲ့ဝင်များကို ကျွန်ုပ်တို့ ဝင်ရောက်ကြည့်ရှုနိုင်ပါသည်။
၇၀ ကီလိုဂရမ်ကို ပေါင်အဖြစ် ပြောင်းကြည့်ရအောင်။
modules များတင်သွင်းခြင်းအတွက် အခြားသော syntax တစ်ခုလည်း ရှိပါသည်။ မော်ဂျူးတစ်ခုလုံးကို တင်သွင်းမည့်အစား၊ ကျွန်ုပ်တို့သည် ထို module မှ သီးခြားလုပ်ဆောင်ချက်များကို တင်သွင်းနိုင်သည်။ ရိုက်လို့ရတယ်။ from Converters import
ရရှိနိုင်သောလုပ်ဆောင်ချက်များစာရင်းကိုပြသရန် "control + space ကိုနှိပ်ပါ။ ဤအရာဖြင့်၊ ကျွန်ုပ်တို့သည် ဤလုပ်ဆောင်ချက်ကို တိုက်ရိုက်ခေါ်ဆိုနိုင်သည်။
လေ့ကျင့်
ဒီမှာ မင်းရဲ့လေ့ကျင့်ခန်း။
ဒါက ကျွန်တော်တို့ ဆွေးနွေးခဲ့တဲ့ ဟောပြောပွဲကနေ လေ့ကျင့်ခန်းတစ်ခုနဲ့ သက်ဆိုင်ပါတယ်။loops များအတွက်” စာရင်းတစ်ခုမှ အကြီးဆုံး နံပါတ်ကို ရှာဖွေရန် ပရိုဂရမ်တစ်ခု ရေးခဲ့သည်။
numbers = [8, 3, 6, 10, 5]
max = numbers[0]
for number in numbers:
if number > max:
max = number
print(max)
ဤကုဒ်သည် လက်ရှိတွင် အဖွဲ့အစည်းမရှိပါ။ ကျွန်ုပ်တို့တွင် မည်သည့်လုပ်ဆောင်ချက်များ သို့မဟုတ် မော်ဂျူးများမျှ မရှိကြောင်းနှင့် ပရိုဂရမ်ကို ဖိုင်တစ်ခုတည်းတွင် ရေးသားထားသည်။ ပရိုဂရမ်ငယ်များအတွက် အဆင်ပြေသော်လည်း သင့်ပရိုဂရမ်များ ကြီးထွားလာသည်နှင့်အမျှ သင့်ကုဒ်ကို အတန်းများနှင့် မော်ဂျူးများတွင် စနစ်တကျ စုစည်းထားရန် လိုအပ်ပါသည်။ ထို့ကြောင့်၊ ဤလေ့ကျင့်ခန်း၏တစ်စိတ်တစ်ပိုင်းအနေဖြင့်၊ ကျွန်ုပ်သည်သင့်အား function တစ်ခုရေးစေလိုသည်၊ ၎င်းကိုခေါ်ပါ။ find_max
. ဤလုပ်ဆောင်ချက်သည် စာရင်းတစ်ခုယူ၍ ထိုစာရင်းတွင် အကြီးဆုံးနံပါတ်ကို ပြန်ပေးရပါမည်။ ထို့နောက် ရှေ့ဆက်ပြီး ဤလုပ်ဆောင်ချက်ကို သီးခြား module တစ်ခုတွင် ထည့်ပါ၊ ၎င်းကို ဤနေရာမှ ထုတ်ယူပြီး ဟုခေါ်သော module တစ်ခုတွင် ထည့်ပါ။ utils
. ဤ module တွင် အသုံးဝင်သောလုပ်ဆောင်ချက်များစွာ ပါဝင်သင့်သည်။ တင်သွင်းပါ။ utils
module ကို လက်ရှိ module ထဲသို့ ခေါ်ဆိုပါ။ find_max
လုပ်ဆောင်ချက်။ နောက်ဆုံးတွင် ရလဒ်ကိုရယူပြီး terminal တွင် ပရင့်ထုတ်ပါ။
ဤလေ့ကျင့်ခန်းသည် အနည်းငယ်ခက်ခဲသော်လည်း အလွယ်တကူလုပ်ဆောင်နိုင်သည်။
ဖြေရှင်းချက်
လုပ်ဆောင်ချက်တစ်ခုကို သတ်မှတ်ခြင်းဖြင့် စတင်ပါ။ find_max
နံပါတ်များဟုခေါ်သော parameter ကိုထည့်ပါ။ ဤလုပ်ဆောင်ချက်အတွင်းတွင်၊ စာရင်းတစ်ခုတွင် အကြီးဆုံးနံပါတ်ကိုရှာဖွေရန်အတွက် algorithm ကိုရေးပါ။
def find_max(numbers):
max = numbers[0]
for number in numbers:
if number > max:
max = number
return max
ဤကုဒ်ကို မော်ဂျူးတစ်ခုအဖြစ် “utils.py” ဖိုင်တွင် သိမ်းဆည်းပါ။
ကျွန်ုပ်တို့၏ ပင်မပရိုဂရမ်သို့ ပြန်သွားရန်၊ syntax နှစ်ခုမှ တစ်ခုစီဖြင့် module ကိုတင်သွင်းပြီး logic ကို ရိုးရှင်းစွာလုပ်ဆောင်ပါ။
တစ်ခုရှိတာက မင်းရဲ့ အာရုံကို စွဲဆောင်ထားဖို့ လိုတာက ယိုင်နဲ့နေတာ max
. အဲဒီအတွက် အကြောင်းရင်းက max
Python တွင် built-in function တစ်ခုဖြစ်ပြီး ၎င်းကို ကျွန်ုပ်တို့ ပြန်လည်သတ်မှတ်နေပါသည်။ ဒါကြောင့် ဒီအချက်က သတိပေးချက်ပါ။ Python compiler max ကို ၎င်း၏ built-in လုပ်ဆောင်ချက်အဖြစ် ကျွန်ုပ်တို့ အသုံးမပြုနိုင်တော့ပါ။
Python တွင် တပ်ဆင်ထားသော မော်ဂျူးများ
Python တွင် အီးမေးလ်ပို့ခြင်း၊ နေ့စွဲနှင့် အချိန်နှင့် လုပ်ဆောင်ခြင်း၊ ကျပန်းတန်ဖိုးများနှင့် စကားဝှက်များ ဖန်တီးပေးခြင်းစသည့် ဘုံလုပ်ငန်းဆောင်တာများအတွက် မော်ဂျူးများစွာပါရှိသော စံစာကြည့်တိုက်တစ်ခု ပါရှိသည်။ Python တွင်တည်ဆောက်ထားပြီးသော module များစွာရှိသည်ဆိုလိုသည်မှာကျွန်ုပ်တို့ပြန်လည်အသုံးပြုနိုင်သည့်လုပ်ဆောင်နိုင်စွမ်းများစွာရှိနေပြီဖြစ်သည်။ ဤ module များကိုသင်ရှာနိုင်သည်။ ဒီမှာ.
packages
ပက်ကေ့ခ်ျများသည် အခြေခံအားဖြင့် ကျွန်ုပ်တို့၏ကုဒ်များကို မော်ဂျူးများ၏ထိပ်တွင် စုစည်းရန် အခြားနည်းလမ်းဖြစ်သည်။ တကယ့်ပရောဂျက်တစ်ခုတွင် ရာနှင့်ချီသော module များပါ၀င်နိုင်ပြီး အချိန်ကြာလာသည်နှင့်အမျှ ကျွန်ုပ်တို့၏လမ်းညွှန်ချက်သည် ဖိုင်များစွာဖြင့် ဖောင်းပွလာမည်ဖြစ်သည်။ ထို့ကြောင့်၊ ပိုမိုကောင်းမွန်သောချဉ်းကပ်နည်းမှာ ပက်ကေ့ခ်ျတစ်ခုအတွင်း ဆက်စပ် module များကို စုစည်းရန်ဖြစ်ပြီး အထုပ်ကို module များစွာအတွက် ကွန်တိန်နာတစ်ခုဖြစ်အောင် ပြုလုပ်ခြင်းဖြစ်သည်။
ပရောဂျက်တွင် လမ်းညွှန်အသစ်တစ်ခုကို ထည့်သွင်းပြီး ဆက်စပ် module အားလုံးကို ထိုလမ်းညွှန်တွင် ထည့်သွင်းထားသည်။ ဥပမာအနေနဲ့၊ ကုန်တိုက်တစ်ခုအကြောင်းစဉ်းစားပါ။ ကုန်တိုက်တစ်ခုတွင် ပက်ကေ့ဂျ်များကဲ့သို့ အမျိုးသား၊ အမျိုးသမီးနှင့် ကလေးအ၀တ်အထည်များအတွက် မတူညီသောကဏ္ဍများရှိသည်။ ကဏ္ဍတစ်ခုစီတွင် ဖိနပ်၊ တီရှပ်နှင့် အကျီများကဲ့သို့သော ကုန်ပစ္စည်းအမျိုးအစားအမျိုးမျိုးအတွက် မတူညီသော နယ်ပယ်များရှိသည်။ ဒါတွေကို module တွေအဖြစ်စဉ်းစားပါ။
Python တွင် ပက်ကေ့ဂျ်များ ဖန်တီးပြီး အသုံးပြုနည်းကို ကြည့်ကြပါစို့။
ပထမဦးစွာ ပရောဂျက်အကန့်မှ လမ်းညွှန်အသစ်တစ်ခုကို ထည့်ပါ။ အဲဒါကို eCommerce လို့ ခေါ်ရအောင်။ ဤပက်ကေ့ချ်တွင် eCommerce အပလီကေးရှင်းတစ်ခုနှင့် သက်ဆိုင်သည့် မော်ဂျူးများအားလုံး ပါဝင်မည်ဖြစ်သည်။
၎င်းသည် အချည်းနှီးသော လမ်းညွှန်တစ်ခု ဖြစ်နေသေးပြီး ၎င်းကို ပက်ကေ့ခ်ျတစ်ခုအဖြစ် ပြောင်းလဲရန်၊ ၎င်းတွင် အထူးဖိုင်တစ်ခု ဖန်တီးရန် လိုအပ်ပါသည်။ ဤလမ်းညွှန်တွင် python ဖိုင်အသစ်တစ်ခုထည့်ကာ ထိုဖိုင်ကို “__init__” ဟု အမည်ပေးသည်။ ၎င်းသည် Python တွင် အထူးကွန်ဗင်းရှင်းတစ်ခုဖြစ်ပြီး Python စကားပြန်သည် လမ်းညွှန်တစ်ခုတွင် ဤအမည်ပါသော ဖိုင်ကိုတွေ့သောအခါ၊ ၎င်းသည် ဤလမ်းညွှန်ချက်ကို ပက်ကေ့ချ်တစ်ခုအဖြစ် သတ်မှတ်သည်။
ပက်ကေ့ဂျ်တစ်ခုကို ဖန်တီးရန် ကျွန်ုပ်တို့တွင် သမရိုးကျနည်းလမ်းတစ်ခုလည်း ရှိပါသည်။ ပရောဂျက် panel ကို right-click နှိပ်ပြီး စာရင်းမှ Python package တစ်ခုကို ဖန်တီးပါ။ အဲဒါကို “eCommerce” လို့ နာမည်ပေးလိုက်ပါ။ ၎င်းသည် “__init__” ဟု အမည်ပေးထားသည့် Python ဖိုင်တစ်ခုနှင့် လမ်းညွှန်တစ်ခုကို အလိုအလျောက် ဖန်တီးပေးမည်ဖြစ်သည်။
ယခု၊ ပက်ကေ့ဂျ်တွင် မော်ဂျူးတစ်ခုကို ဖန်တီးပြီး ၎င်းကို "ပို့ဆောင်ခြင်း" ဟု အမည်ပေးကြပါစို့။ ဤ module တွင်၊ ပို့ဆောင်ခများကို တွက်ချက်ရန်အတွက် ရိုးရှင်းသောလုပ်ဆောင်ချက်ကို ဖန်တီးကြပါစို့။
def calc_shipping():
print("calc_shipping")
ကျွန်ုပ်တို့၏ ပင်မ module တွင် ဤလုပ်ဆောင်ချက်ကို ဝင်ရောက်ရန်၊ ကျွန်ုပ်တို့သည် ၎င်းကို e-commerce ပက်ကေ့ချ်မှတစ်ဆင့် ဝင်ရောက်ကြည့်ရှုရမည်ဖြစ်သည်။ တစ်ဖန် ကျွန်ုပ်တို့တွင် ဤ module ကိုတင်သွင်းရန် နည်းလမ်းနှစ်ခုရှိသည်။
ပထမနည်းလမ်းတွင်၊ ကျွန်ုပ်တို့သည် မော်ဂျူးတစ်ခုလုံးကို ထည့်သွင်းပြီးနောက် ဤကဲ့သို့သော လုပ်ဆောင်ချက်တစ်ခုကို သီးခြားခေါ်ဆိုနိုင်သည်-
import eCommerce.shipping
eCommerce.shipping.calc_shipping()
သို့သော်၊ ဤချဉ်းကပ်မှုဖြင့်၊ ဤ module သို့ လုပ်ဆောင်ချက်များထဲမှ တစ်ခုကို ခေါ်ဆိုခြင်းဖြင့် ၎င်းကို ရှေ့ဆက်ရန် လိုအပ်သည်။ eCommerce.shipping.
အဲဒါက အရမ်းစကားများတယ်။ ထို့ကြောင့်၊ packages များနှင့်အလုပ်လုပ်သောအခါကျွန်ုပ်တို့သည်ဒုတိယချဉ်းကပ်မှုကိုမကြာခဏအသုံးပြုပြီး၎င်းကိုအသုံးပြုသည်။ from
ကြေညာချက်ထုတ်ပြန်ခြင်းဖြစ်သည်။
from eCommerce.shipping import calc_shipping
calc_shipping()
မော်ဂျူးတစ်ခုတွင် လုပ်ဆောင်ချက်အများအပြားရှိလျှင် ၎င်းတို့ကြားရှိ ကော်မာများကို အသုံးပြု၍ ၎င်းတို့အားလုံးကို တစ်ကြောင်းတည်းတွင် ထည့်သွင်းနိုင်သည်။ ကျွန်ုပ်တို့၏ ပို့ဆောင်မှု module တွင် အခွန်တွက်ချက်ခြင်းအတွက် အခြားလုပ်ဆောင်ချက်တစ်ခုရှိသည် ဆိုကြပါစို့။ ဤကဲ့သို့ တင်သွင်းမည်
from eCommerce.shipping import calc_shipping, calc_tax
သင်တစ်ဦးချင်းစီ module များကိုလည်းတင်သွင်းနိုင်ပြီးပရိုဂရမ်၏နောက်ပိုင်းအဆင့်တွင်ခေါ်ရန်လုပ်ဆောင်ချက်များကိုထားခဲ့နိုင်သည်။ module shipping ကို တင်သွင်းပြီး function ကိုခေါ်ရန် dot operator ကိုသုံးကြပါစို့ calc_shipping.
from eCommerce import shipping
shipping.calc_shipping()
အပြီးသတ်သည်!
Packages များနှင့် Modules များသည် Python တွင် အလွန်အရေးကြီးပါသည်။ အထူးသဖြင့်၊ သင်တည်ဆောက်ရန်အတွက်အသုံးပြုသော Django ကဲ့သို့သော framework ဖြင့်အလုပ်လုပ်လိုသောအခါ ဝဘ် application များ Python နှင့် အခြား Python သင်တန်းတွင် Django ကို ကြည့်ရှုပါမည်။
ဤစီးရီး၏ နောက်ဆုံး သမားရိုးကျ ဟောပြောချက်ဖြစ်သည်။ နောက်လာမည့်သင်ခန်းစာသည် ကျွန်ုပ်တို့၏ပုံမှန်ပုံစံမှသွေဖည်မည်ဖြစ်ပြီး Python တွင်အရေးကြီးသောအသုံးပြုမှုအချို့ကိုလေ့လာပါမည်။ ၎င်းသည် ဤစီးရီး၏အဆုံးသတ်အမှတ်အသားဖြစ်ကာ ကျွန်ုပ်တို့၏နောက်ထပ် Python စီးရီးသို့ ဆက်သွားပါမည်။ အဲဒါကို စောင့်မျှော်နေပါ။
တစ်ဦးစာပြန်ရန် Leave