Pythonda o'z istisno turlarini yaratish
Pythonda standart mavjud bo'lgan istisnolar har doim ham turli vaziyatlardagi barcha ehtiyojlarimizni qondira olmaydi. Shuning uchun Pythonda o'z istisno turini yaratish imkoniyati o'rnatilgan.
Istisno yaratish uchun class kalit
so'zi yordamida maxsus OOP klassini
e'lon qilish kerak. Undan keyin istisno
nomi yoziladi, nomdan keyin qavs ichida
esa istisno turi ko'rsatiladi:
class Istisno(istisno turi):
pass
Keling, juda uzun ro'yxatlarni ushlash
uchun o'zimizning ToBigLength
klassimizni yarataylik. Ushbu klass
qavslari ichida u ushlaydigan istisno
turini yozamiz. Bu Exception
istisnosi bo'lsin. Klass tarkibida
hozircha pass yozish mumkin:
class ToBigLength(Exception):
pass
Yangi yaratilgan istisnoming ishlashini
tekshirib ko'raylik. Buning uchun
try-except konstruktsiyasini
yozamiz, va o'zimizning istisnomizni
maxsus raise buyrug'i yordamida
chaqiramiz:
try:
raise ToBigLength
except ToBigLength:
print('error: list is too big')
Kod bajarilgandan keyin chiqadi:
'error: list is too big'
Manfiy sonni ushlash uchun istisno yarating.
Nolni ushlash uchun istisno yarating.