Python Алдааг шалгах /Try Except/
try
нь блок бичигдсэн код алдаатай байх боломжийг олгодог гэж ойлгож болно. except
нь алдааг зохицуулах боломжийг бидэнд өгч байна. finally
блок нь үр дүнгээс үл хамааран кодыг ажиллуулах боломжийг олгодог.
Exception Handling буюу Тооцоологдоогүй нөхцөл байдлыг хангаж ажиллах
Алдаа гарсан үед, эсвэл тооцоологдоогүй нөхцөл байдлаас болж Python зогсож алдааны мэдээлэл өгдөг.
Эдгээрээс үл хамааран try
statement-г ашиглан зохицуулж болно.
Жишээ нь:
try
-д алдаатай команд өгч үзье. "z" хувьсагчийг зарлаагүй байна.
try:
print (z)
except:
print("Хувьсагч зарлагдаагүй байна")
Үр дүн
C:\Users\Pc Name>try.py
Хувьсагч зарлагдаагүй байна
Хэрэв бид try
, except
блок ашиглаагүй бол Python доорх алдааг өгнө.
Жишээ нь:
print (z)
Үр дүн
C:\Users\Pc Name>try.py
Traceback (most recent call last):
File "G:\Hicheel\Python\try.py", line 1, in
print(z)
NameError: name 'z' is not defined
Many Exceptions
Тооцоологдоогүй нөхцөл байдлын үр дүнг илэрхийлэх exeption блокийг та хүссэнээрээ оруулах боломжтой.
Хэрэв та хүсвэл тусгай төрлийн алдаанд өгөх тусгай блок оруулж болно.
Жишээ нь:
Try Block-д NameError
буюу нэрийн алдаатай мэдээлэл ирвэл тохирох зурвас илгээдэг, харин бусад тохиолдолд өөр зурвас илгээж үзье.
try:
print (z)
except NameError:
print ("z хувьсагч зарлагдаагүй байна")
except:
print ("Өөр ямар нэг зүйл буруу байна")
Үр дүн
C:\Users\Pc Name>try.py
z хувьсагч зарлагдаагүй байна
Жишээ нь:
Try Block-д NameError
буюу нэрийн алдаатай мэдээлэл ирвэл тохирох зурвас илгээдэг, харин бусад тохиолдолд өөр зурвас илгээж үзье.
try:
print (z)
except ValueError:
print ("z хувьсагч зарлагдаагүй байна")
except:
print ("Өөр ямар нэг зүйл буруу байна")
Үр дүн
C:\Users\Pc Name>try.py
Өөр ямар нэг зүйл буруу байна
Else
Хэрэв блокт ямар нэгэн алдаа илрээгүй бол else
түлхүүр үгийг ашиглаж болно.
Жишээ нь:
Try блокт ямар нэгэн алдаагүй код бичиж үзье.
try:
print ("Сайн байн уу")
except:
print ("Ямар нэгэн зүйл буруу байна")
else:
print ("Try блокд ямар нэгэн алдаа илэрсэнгүй")
Үр дүн
C:\Users\Pc Name>regex.py
Сайн байн уу
Try блокт ямар нэгэн алдаа илэрсэнгүй
Finally
try
блокийн үр дүнгээс үл хамааранfinally
блок үүргээ гүйцэтгэнэ.
Жишээ нь:
Try блокт ямар нэгэн алдаагүй код бичиж үзье.
try:
print (z)
except:
print ("Хувьсагч зарлагдаагүй байна")
finally:
print ("Try except блок ажиллаж дууссан байна")
Үр дүн
C:\Users\Pc Name>regex.py
Хувьсагч зарлагдаагүй байна
Try except блок ажиллаж дууссан байна