Python istisnolar (Try...Except)
trybloki kod blokini xatolar uchun sinab ko‘rish imkonini beradi.
except bloki xatoni hal qilish imkonini beradi.
elsebloki xato bo‘lmaganda kodni bajarishga imkon beradi.
finally bloki sinash natijasidan qat’iy nazar kodni bajarishga imkon beradi- va bloklardan tashqari.
Istisno bilan ishlash
Xato yoki biz uni istisno qilganda, Python odatda to‘xtab qoladi va xato xabarini yaratadi.
Ushbu istisnolarnitryoperatori yordamida hal qilish mumkin:
Misol
trybloki istisno hosil qiladi, chunki x aniqlanmagan:
try:
print(x)
except:
print("An exception occurred")
O‘zingiz sinab ko‘ring »
Sinab ko‘rish bloki xatoga yo‘l qo‘yganligi sababli, istisno bloki bajariladi.
Sinab ko‘rish bloki bo‘lmasa, dastur ishdan chiqadi va xatoga yo‘l qo‘yadi:
Ko‘p istisnolar
Siz xohlagancha istisno bloklarini belgilashingiz mumkin, masalan. agar siz maxsus xatolik uchun maxsus kod blokini bajarmoqchi bo‘lsangiz:
Misol
Sinab ko‘rish bloki NameErrorni ko‘tarsa, bitta xabarni va boshqa xatolar uchun boshqasini chop eting:
try:
print(x)
except NameError:
print("Variable x is not defined")
except:
print("Something else went wrong")
O‘zingiz sinab ko‘ring »
Python o‘rnatilgan istisnolar ma’lumotnomamizda ko‘proq xato turlarini ko‘ring.
Boshqa
Hech qanday xatolik yuzaga kelmasa, bajariladigan kod blokini aniqlash uchunelsekalit so‘zidan foydalanishingiz mumkin:
Misol
Ushbu misoldatrybloki hech qanday xato yaratmaydi:
try:
print("Hello")
except:
print("Something went wrong")
else:
print("Nothing went wrong")
O‘zingiz sinab ko‘ring »
Nihoyat
finally bloki, agar ko‘rsatilgan bo‘lsa, try bloki xatolik tug‘diradimi yoki yo‘qmi, qat’iy nazar bajariladi.
Misol
try:
print(x)
except:
print("Something went wrong")
finally:
print("The 'try except' is finished")
O‘zingiz sinab ko‘ring »
Bu obyektlarni yopish va resurslarni tozalash uchun foydali bo‘lishi mumkin:
Misol
Yozish mumkin bo‘lmagan faylni ochishga va unga yozishga harakat qiling:
try:
f = open("demofile.txt")
try:
f.write("Lorum Ipsum")
except:
print("Something went wrong when writing to the file")
finally:
f.close()
except:
print("Something went wrong when opening the file")
O‘zingiz sinab ko‘ring »
Dastur fayl obyektini ochiq qoldirmasdan davom etishi mumkin.
Istisno ko‘taring
Python dasturchisi sifatida, agar biror holat yuzaga kelsa, istisno qilishni tanlashingiz mumkin.
Istisnoni tashlash (yokiraise) uchunraisekalit so‘zidan foydalaning.
Misol
Xatoni ko‘taring va agar x 0 dan past bo‘lsa, dasturni to‘xtating:
x = -1
if x < 0:
raise Exception("Sorry, no numbers below zero")
O‘zingiz sinab ko‘ring »
raisekalit so‘ziraiseistisno uchun ishlatiladi.
Siz qanday xatoni ko‘tarishni va matnni foydalanuvchiga chop etishni belgilashingiz mumkin.
Misol
Agar x butun son bo‘lmasa, TypeErrorni ko‘taring:
x = "hello"
if not type(x) is int:
raise TypeError("Only integers are allowed")
O‘zingiz sinab ko‘ring »
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
