Skip to main content

Command Palette

Search for a command to run...

Error Handling in Python

Week-3

Published
2 min read
Error Handling in Python

Beginnerတယောက်အနေနဲ့ Pythonကိုလေ့လာရင်း Error ဘာကြောင့်ဖြစ်လဲ၊ Errorဖြစ်လာရင် ဘယ်လိုဖြေရှင်းမလဲ ဆိုတာသိဖို့လိုပါတယ်။

Programmer syntax လွဲလို့ပဲဖြစ်စေ အခြားသော မမျှော်လင့်ထားတဲ့ error တွေကြောင့် ကိုယ့်ရဲ့ program အလုပ်မလုပ်တော့တဲ့ပြဿနာတွေ ဖြစ်နိုင်ပါတယ်။ ဉပမာ အနေနဲ့ Computerရဲ့ hardware ဖောက်ပြန်မှုကြောင့်လည်း ဖြစ်နိုင်သလို code ထဲမှာရှိတဲ့ error တစ်ခုခုကြောင့်လည်း ဖြစ်နိုင်ပါတယ်။

အရမ်းသေးငယ်တဲ့ program တစ်ခုပဲဆိုရင်တောင်မှ သတ်မှတ်ထားတဲ့ Syntax ကိုမလိုက်နာရင် Computerကနားလည်နိုင်မှာ မဟုတ်ပါဘူး။

Python ကိုလေ့လာနေတုန်းမှာ Syntax Errors တွေကိုအများဆုံးတွေ့ရလိမ့်မယ်။

Syntax Errors ဆိုတာကတော့ Syntax rules တွေကိုမလိုက်နာလို့ဖြစ်တာပါ။

Syntax: ဆိုတာကတော့ Programming Language တိုင်းမှာ ပုံစံအမျိုးမျိုး နဲ့ သတ်မှတ်ထားတဲ့ Computerတွေ နားလည်အောင် ရေးတဲ့‌ရေးနည်းလို့ ယေဘုယျပြောလို့ရပါတယ်။

Pythonရဲ့Syntax အကြောင်းပိုမိုလေ့လာချင်ရင် https://docs.python.org/3/whatsnew/3.8.html မှာသွားရောက် ဖတ်ရှုနိုင်ပါတယ်။

Syntax တွေကြောင့်ပဲ Error တက်နိုင်တာမဟုတ်ပါဘူး။ Python မှာအနည်းဆုံး syntax error နဲ့ exceptions ဆိုပြီး Error အမျိုးအစားနှစ်မျိုး ရှိပါတယ်။

Exceptions(runtime errors)ဆိုတာကတော့ Program run လိုက်တဲ့အချိန်မှာ ဖြစ်ပေါ်လာတဲ့ errors အများစုကို exceptions လို့ ခေါ်ကြပါတယ်။

ဉပမာ int(“hello, world”) ဆိုပြီး run လိုက်ရင် error တက်မှာပါပဲ။ Python မှာ exceptions errors တွေကိုကိုင်တွယ်ဖို့ try and except ဆိုတဲ့ keywords တွေရှိပါတယ်

tryကတစ်‌ယောက်ထဲအလုပ်မလုပ်ဘူးexcept,else,finallyစတာတွေနဲ့တွဲ သုံးမှရပါတယ်။

try က if လိုမျိုး condition တွေစစ်စရာမလိုဘဲ try နဲ့ except ကြားက indentation(1 tab) လုပ်ထားတဲ့ code block တွေမှာ error ဖြစ်မဖြစ်စစ်ပါတယ်။ Error ဖြစ်လာရင်တော့ except code block ကိုအလုပ်လုပ်သွားမှာဖြစ်ပါတယ်။

တကယ်လို့ except ကို error နဲ့တွဲမစစ်ဘူးဆိုရင်တော့ ဘယ် error ဖြစ်ဖြစ် except အထဲကဟာကို ဆက်လုပ်သွားမှာပါ။

try:
    x = int(input("What's x? "))
    print(f"x is {x}")
except ValueError:
    print("x is not an integer")

else: ကိုတော့try ရဲ့ code block က error မတက်ဘူးအဆင်ပြေတယ်ဆိုရင် except ရဲ့ code block ကို ကျော်သွားပြီး code ကို အရင်အတိုင်းပဲ အလုပ်လုပ်မှာပါ။

try:
    x = int(input("What's x? "))
except ValueError:
    print("x is not a integer")
else:
    print(f"x is {x}")

Python မှာ pass ဆိုတဲ့ keyword လေးတစ်ခု ရှိပါတယ်။ သူကတော့ code တွေကို silently ignore လုပ်သွားမှာပါ။

ဖတ်ရှုပေးလို့ ကျေးဇူးအထူးတင်ရှိပါတယ်။ နောက်တစ်ပတ်မှာ ပိုစိတ်ဝင်စားဖို့ကောင်းတဲ့အကြောင်းအရာတွေနဲ့ ပြန်ဆုံကြပါမယ်။


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 read172
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 read234
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 read272
How to connect On Premises Network and Cloud (AWS)? (Part-1)

Accessibility for Designer

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

Nov 21, 20253 min read75
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 read101
VPC Endpoint
M

Myanmar Technical Blog

108 posts

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