Skip to main content

Command Palette

Search for a command to run...

Library in Python

Week-4

Updated
3 min read
Library in Python

ကျွန်တော်တို့ week 4 မှာဆိုရင်ဖြင့် libraries တို့ module တို့ကိုအဓိကထားပြောသွားပြီးကျန်တဲ့အရာများကိုလည်းဖြည့်ပြောသွားပါတယ်။ အရင်ဆုံးကတော့ library ပဲဖြစ်ပါတယ်။ library ဟာဆိုရင်ဖြင့် module တွေစုထားတဲ့အရာကို library လို့ခေါ်ပါတယ်။ အဲ့တာဆို module ကကျဘာလဲ module ဟာဆိုရင်ဖြင့် .py file တစ်ခုပါပဲ။ ဒါပေမယ့် module ထဲမှာတော့ function တစ်ခု၊ ဒါမှမဟုတ်တစ်ခုထက်ပိုတဲ့ function တွေကိုစုရေးထားတာကို module လို့ခေါ်ပါတယ်။ အဲ့လို module တွေ library တွေကို ကိုယ့်ဘာသာရေးပြီးပြန်သုံးလို့ရသလိုတခြားသူတွေရေးတဲ့ module တွေ library တွေကိုလဲခေါ်သုံးလို့ရပါတယ်။ Programmer တွေအနေနဲ့ module တွေ တည်ဆောက်ပြီး code ‌ရေးမယ် အဲ့ထဲက code ကိုလိုလာရင် နောက် project တွေမှာသုံးမယ် public ကို share မယ်စတာတွေကို Python က modules အနေနဲ့ support ပေးပါတယ်။ထိုအရာတွေကိုခေါ်သုံးမယ်ဆိုရင်တော့ import ဆိုတာနဲ့ module ရဲ့ name ကိုခေါ်သုံးရတာပဲဖြစ်ပါတယ်။

ကိုယ်တိုင် File တစ်ခုထဲမှာ function တွေတည်ဆောက်ပြီး ကိုယ်ပိုင် library တွေလည်း လုပ်လို့ရပါတယ်။သူတို့ကိုခေါ်သုံးချင်ရင်တော့

from (file name) import (function name)

ဆိုပြီး သုံးရမှာဖြစ်ပါတယ်။

အဲ့တာဆို built-in module တွေထဲကတစ်ခုဖြစ်တဲ့ random နဲ့မိတ်ဆက်ပေးပါမယ်။ random ဟာဆိုရင်ဖြင့် order တွေကိုပြောင်းတဲ့နေရာမှာပဖြစ်ဖြစ် 1 ကနေ 10 အတွင်းကဂဏန်းတစ်လုံးကို random ယူလိုက်တာပဲဖြစ်ဖြစ် randomly လုပ်တဲ့ module ပဲဖြစ်ပါတယ်။ random ထဲမှာ function တွေအများကြီးရှိပါတယ်။ အဲ့ထဲကတစ်ခုဖြစ်တဲ့ .choice() အကြောင်းကိုဆက်ပြောသွားပါမယ်။. choice() ဟာဆိုရင်ဖြင့် သူ့ရဲ့ argument နေရာမှာရှိတဲ့ အရာတွေထဲမှတစ်ခုကို random ယူသွားတာပဲဖြစ်ပါတယ်။ အဲ့လို module ကို import နဲ့ခေါ်ရင်တော့အဲ့ module ထဲမှာပါတယ့် function တွေအကုန်လုံးကို import သွားမှာပဲဖြစ်ပါတယ်။

import keyword ကတော့ အပြင်က module file တစ်ခုလုံးကို ကိုယ်အခုလက်ရှိရေးနေတဲ့ current file တို့ကို link ချိတ်ပေးပါတယ်။ link လုပ်ပြီးသား module ထဲက function တွေကို သုံးချင်ရင်ကျ module prefix(eg: module.function()) နဲ့ သုံးရပါတယ်။ တကယ်လို့ function အကုန်လုံးကိုမသုံးပဲ function တစ်ခုကိုပဲခေါ်မယ်ဆိုရင်တော့ from နဲ့သုံးရတာပဲဖြစ်ပါတယ်။

တကယ်လို့ function အကုန်လုံးကိုမသုံးပဲ function တစ်ခုကိုပဲခေါ်မယ်ဆိုရင်တော့ from နဲ့သုံးရတာပဲဖြစ်ပါတယ်။ ဥပမာ from random import choice() ဆိုရင်တော့ random module ထဲက choice() function ကို ရွေး import သွားမှာပဲဖြစ်ပါတယ်။ အဲ့လိုဆိုရင် random ထဲမှာရှိတဲ့ အခြား function တွေဖြစ်တဲ့ .randint(), .shuffle() တို့ထဲက .randint() ကတော့ range လိုပါတယ်။ ဥပမာ .randint(1,10) ဆိုရင်တော့ 1 ကနေ 10 အတွင်းမှာရှိတယ့် ဂဏန်းတစ်ခုကို random ယူသွားမှာပဲဖြစ်တယ်။ နောက်တစ်ခုကတော့. shuffle(x) ပဲဖြစ်ပါတယ်။. shuffle() ကတော့ နောက်မှာထည့်ထားတဲ့ argument ရဲ့ order ကိုပြောင်းပေးတဲ့ function ပဲ ဖြစ်ပါတယ်။ အတာဆိုနောက်တဲ့ module တစ်ခုဖြစ်တဲ့ statistic ကတော့ mean တွေ median တွေ mode တွေကိုရှာတဲ့ module ပဲဖြစ်ပါတယ်။ mean ဆိုတာကတော့ပျမ်းမျ, median ကတော့အလယ်ကိန်း, mode ကတော့အကြိမ်အများဆုံးကိန်းပဲဖြစ်ပါတယ်။

as: ကိုတော့ from နဲ့တိတိကျကျ link လုပ်ပြီးသား function တေကို ကိုယ့် current file ထဲမှာ function ကိုနာမည်ပြန်ပေးတဲ့သဘောပါပဲ။ syntax(‌ရေးနည်း) from my_module import my_function as func တကယ်လို့ အခြား module ထဲမှာရှိတဲ့ function နဲ့နာမည်တူ function တခု create လုပ်ချင်တယ်ဆိုရင် လည်းရတော့ရပါတယ်။

command line interface ကြောင့် code မှာ input မသုံးပဲ ကိုယ် run ချင်တဲ့ python file name ကို ခေါ်ပြီး သူ့နောက်မှာ စကားလုံးတွေ နံပါတ်တွေကို input အနေနဲ့ ထည့်လိုက်လို့ရပါတယ်။

အဲ့ input ကို code က နေ access လိုချင်ရင်တော့ sys ဆိုတဲ့ module ကို သုံးရပါတယ်။

argv ဆိုတဲ့ function ကတော့ command line interface ကနေ ကိုယ်ထည့်လိုက်တဲ့ input ကို list အနေနဲ့ မှတ်ယူပေးတာဖြစ်တယ်။ အဲ့လိုမှတ်ယူပေးဖို့အတွက် sys.argv ကို အသုံးပြုရပါတယ်။ argv ရဲ့အလုပ်လုပ်ပုံက code run တဲ့ terminal ပေါ်မှာရှိတဲ့ subsequence space ခြားထားတာတွေကို list တစ်ခုအနေနဲ့ ယူလိုက်ပါတယ်။ argv[0] က code file ရှိတဲ့ location ဖြစ်ပြီး space ခြားပြီးရိုက်လိုက်သမျှ list ရဲ့ item တစ်ခုစီအနေနဲ့ ဝင်သွားပြီး အဲ့ item ကို ကိုယ့် code ထဲမှာ argv ရဲ့ index ဘယ်လောက်ဆိုပြီးခေါ်သုံးရတာပါ။ sys.exit() ကိုတော့ programကို ဆက် မ run တော့ပဲ exit လုပ်ချင်တဲ့အခါမှာ သုံးရပါတယ်။

packagesဆိုတာ powerful ဖြစ်တဲ့third party library တွေစုထားတဲ့ folderတစ်ခုဖြစ်ပါတယ်။ third party libraries ဆိုတာကတော့ python မှာတန်းပါပြီးသားမဟုတ်ပေမယ့် မိမိဘာသာ install ပြီးယူသုံးလို့ရတဲ့ သူတစ်ပါးရေးထားပြီးသား function တွေဖြစ်ပါတယ်။ အဲ့လို packageတွေကို PyPI (Python Package Index)ဆိုတဲ့ website ကနေ တဆင့် download and install လုပ်လို့ရပါတယ်။

အဲ့လို third party library တွေကို install လုပ်တဲ့အခါမှာ pip ဆိုတဲ့ python manager ကိုသုံးရပါတယ်။

ဥပမာ pip install cowsay ဆိုပြီး terminal ထဲမှာ ရိုက်လိုက်တာနဲ့ cowsay ဆိုတဲ့ package ကို install လုပ်ပြီးသားဖြစ်မှာဖြစ်ပြီး cowsay ထဲမှာပါတဲ့ function တွေကို သုံးနိုင်ပြီဖြစ်ပါတယ်။

APIs`: ရဲ့အရှည်ကတော့ application programming interface ဖြစ်ပါတယ်။ သူက databaseတွေကို web server ပေါ်မှာရှိတဲ့ third-party services တွေနဲ့ connect လုပ်ပေးပြီး third-party တွေရဲ့ data တွေကို ကိုယ့် program မှာ ယူသုံးနိုင်အောင်ချိတ်ဆက်ပေးတဲ့ HTTP link တွေပါပဲ။ API အများစုကို internet ပေါ််ကနေ အလွယ်တကူ ရှာဖွေအသုံးပြုနိုင်ပါတယ်။ API တွေကို‌ ကိုယ့် python program မှာသုံးချင်ရင် requests ဆိုတဲ့ library ကိုသုံးရပြီး web browser တွေဆီက dataတွေကို ယူသုံးနိုင်ဖို့ request.get() function သုံးလို့ရပါတယ်။

JSON

JSON (JavaScript Object Notation) ဆိုတာက‌တော့ computer တွေကြား data exchange လုပ်တဲ့အခါ အသုံးပြုတဲ့ standard file format/ language agnostic format ဖြစ်ပါတယ်။


Weekend Warriors

  • 6 members : 1 girl and 5 boys

    • 14 to 18 years old

    • learning programming for a year

More from this blog

Infrastructure ကိုင်ပြီး အိပ်ရေးမပျက် ချင် လျှင် ဒါမျိုး Alarms လုပ် 🔥🔥🔥

High Level ရေးထားတာပါ ဒါပေမဲ့ လွယ်ပါတယ် ​ကိုယ့်မှာ AWS Infra တွေရှိတယ်ဆို တွေ့သမျှ metric တွေကို alarms တွေလုပ်ပြီး notification ယူမနေဘဲ တကယ် effective ဖြစ်တဲ့ metric တွေကိုမှ CloudWatch ရဲ့ alarm feature တွေနဲ့ ပေါင်းပြီး ပို့စေချင်ပါတယ်။ ​ဥပမာ prod...

Jan 17, 20263 min read159
Infrastructure ကိုင်ပြီး အိပ်ရေးမပျက် ချင် လျှင်  ဒါမျိုး Alarms လုပ် 🔥🔥🔥

How to connect On Premises Network and Cloud (AWS)? (Part-2)

ကိုယ့်ရဲ့ ‌data center (on-prem) network နဲ့ AWS ချိတ်ဆက်ဖို့ လိုလာပြီဆိုရင် ဘယ်လို ချိတ်ဆက်ကြမလဲ? အပိုင်း (၂) မှာ တော့ Direct connect အကြောင်းကို ဆွေးနွေး သွားမှာ ဖြစ်ပါတယ်။ အပိုင်း (၁) Site-to-site VPN အကြောင်းကို လေ့လာချင်ရင်တော့ အောက်ပါ link မှာ ...

Dec 20, 20253 min read224
How to connect On Premises Network and Cloud (AWS)? (Part-2)

How to connect On Premises Network and Cloud (AWS)? (Part-1)

ကိုယ့်ရဲ့ ‌data center (on-prem) network နဲ့ AWS ချိတ်ဆက်ဖို့ လိုလာပြီဆိုရင် ချိတ်ဆက်နိုင်တဲ့ နည်း (၂) နည်း ရှိပါတယ်။ 1. Site-to-Site VPN (Virtual Private Network) 2. Direct connect Site-to-Site VPN - On-prem network နဲ့ AWS resources တွေ ချိတ်ဆက်တဲ့...

Dec 12, 20252 min read262
How to connect On Premises Network and Cloud (AWS)? (Part-1)

Accessibility for Designer

လွန်ခဲ့တဲ့အပတ်က ရုံးက Designer တွေနဲ့ တော်ကီပွားရင်း Accessibility နဲ့ပတ်သတ်တာတွေ သူတို့ကို ရှင်းပြဖြစ်တယ်။ ကိုယ်တိုင်ကလည်း အရင်ကတည်းက ဒီ topic ကိုစိတ်ဝင်စားလို့ လေ့လာနေတာဆိုတော့ အခွင့်အရေးရရင် ရသလို sharing လုပ်ဖြစ်တယ်။ အဓိကက Accessibility နဲ့ပတ်သတ်...

Nov 21, 20253 min read69
Accessibility for Designer

VPC Endpoint

အားလုံးဘဲ မင်္ဂလာပါ။ ဒီနေ့ sharing လုပ်ပေးချင်တာကတော့ VPC Endpoint အကြောင်းဘဲဖြစ်ပါတယ်။ VPC Endpoint ဆိုတာ VPC နဲ့ AWS services တွေ ကို public Internet ကို အသုံးမပြုဘဲနဲ့ Privately connect လုပ်ပေးတာ ဖြစ်ပါတယ်။ Internet Gateway, NAT Gateway နဲ့ Public...

Nov 18, 20252 min read97
VPC Endpoint
M

Myanmar Technical Blog

108 posts

Cloud, Linux, DevOps, Docker, Security အစရှိတဲ့ နည်းပညာများ အကြောင်းကို မြန်မာလို ပြန်လည်မျှဝေပေးမယ့် Blog ပဲဖြစ်ပါတယ်ခဗျာ...