Error Handling in Python

Error Handling in Python

Week-3

·

2 min read

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 အကြောင်းပိုမိုလေ့လာချင်ရင် 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