Sissejuhatus Pythoni erandkäsitlusse

Erandeid käsitletakse pythonis kahe peamise tehnika abil, need on väite ja erandite käsitlemine. Selles peatükis käsitleme python-erandite käsitlemise tehnikaid
Kõiki sündmusi, mis suunavad ümber programmivoo tavapärase täitmise, nimetatakse erandiks. Proovi plokki hoiab võimalikke tõrkeid koodide genereerimisel. Korrastamine ja nende erandite haldamine on protsess, mille viib välja erandplokk, mis sisestatakse iga prooviploki lõppu. Üks prooviplokk võib seostada rohkem kui ühe erandi konkreetsel ajal, muu plokk kuulub tavapärase programmi voo sektsiooni alla. Kõik koodid, kus pole vaja prooviploki kaitset, paigutatakse programmi muusse plokki.

Süntaks:

try: Executes when suspicious code is executed
except Exception1: Executed when
exception 1 is raised
except Exception2: Executed when exception 2 is raised
else: If there is no exception then execute this block

Standardsete erandite loend

Erand: kõigi erandite põhiklass

StopIteration: kui iteraatori järgmise meetodiga ükski objekt ei osuta, tõstetakse see erand välja

SystemExit: tõsteti funktsiooni sys.exit () kaudu.

StandardError: välja arvatud StopIteration ja SystemExit, toimib see kõigi sisseehitatud funktsioonide põhiklassina.

ArithmeticError: kõigi numbriliste vigade korral toimivad need erandid põhiklassina.

OverflowError: numbrilise tüübi korral, kui arvutus ületab maksimaalse võimaliku väärtuse, tõstetakse see tõrge.

FloatingPointError: Ujukoperatsiooni ebaõnnestumine põhjustab selle tõrke

ZeroDivisionError: tõstetakse, kui koodis jagatakse olukord nulliga

AssertionError: kui väite avaldamine ebaõnnestub, käivitatakse see tõrge

AttributeError: kui määramine või atribuudi viide ebaõnnestub, tekitab see selle tõrke

EOFErroR: tõstetakse, kui funktsiooni ja faili lõppu pole enam sisendit

ImportError: tõstetakse, kui impordideklaratsioon ebaõnnestub.

KeyboardInrtrupt: tõstetakse, kui programmi täitmine on katkestatud

LookupError: kõik otsimisvead kuuluvad selle põhiklassi alla

IndexError: tõstetakse, kui indeksit ei leitud

KeyError: tõstetakse, kui sõnaraamatus pole nimetatud võtme väärtust

NameError: tõstetud puuduva identifikaatori jaoks programmis lokaalselt või globaalselt

UnboundLocalError: tõstetakse kohaliku muutuja kasutamisel, ilma et sellele oleks mingit väärtust omistatud.

EnvironmentError: keskkonnamõjude vigade põhiklass väljaspool pythonit

IOError: tõstetud, kui sisend- / väljundprotsess ebaõnnestus

SyntaxError: selle erandiga käsitletakse kõiki pythoni süntaksile orienteeritud vigu

IndentationError: ebaõige treppimine põhjustab selliseid vigu

SystemError: See ilmneb olukorras, kus tõlk ei tööta ootuspäraselt, kuid see tõrge ei muuda python-programmi täitmisest välja.

SystemExit: kui python-tõlk kasutab funktsiooni sys.exit (), viib see selle erandini. see muudab koodi ebahariliku lõpetamise, kui seda ei käsitata õigesti.

TypeError: kui toiming on teatud andmetüübi jaoks kehtetu, küsitakse seda tõrget

ValueError: kui funktsioon omab kehtivat tüüpi argumenti, kuid selle tüübi argumendile on määratud vale väärtus

RuntimeError: kui mõni ülaltoodud kategooriatest pole rahul, siis tõstetakse see tõrge

NotImplementedError: tõstetakse, kuigi mittekonfiguratiivset meetodit, mida soovitakse rakendada päritud klassis, ei rakendata tegelikult. Korrastamine ja nende erandite haldamine on protsess, mille viib välja erandplokk, mis sisestatakse iga prooviploki lõppu.

Erandite käsitlemise protsess Pythonis

  • Välja arvatud mitmete eranditega klausel
  • Välja arvatud klausel, milles pole ühtegi erandit nimetatud
  • Välja arvatud klausel argumentidega

Allpool käsitleme erandite käsitlemise protsessi Pythonis

1. Välja arvatud klausel koos mitme erandiga

See võimaldab deklareerida ühes väljaarvatud klauslis rohkem kui ühe väljavõtte, välja arvatud juhul, ja kõiki neid välja kuulutatud erandeid saab sellest välja arvata.

Süntaks:

try: Code block1
except(Exception1(, Exception2(, …ExceptionN)))):
Executes when one among the exception happens
else: Executed when no exception is raised

2. Välja arvatud punkt ilma erandita

Kõiki prooviplokist käivitatud erandeid saab siin töödelda.

Süntaks:

try:
Code block1
except:
Executes if any type of exception happens
else:
If there is no exception then execute this block

3. Välja arvatud argument argumentidega

Erandi tegelik põhjus hoitakse argumendi väärtuses

Süntaks:

try:
Code block1except
ExceptionType, Argument:
Argument value is printed here

4. Erandite käsitlemise programm

Süntaks:

try:
fh = open("testfile1", "w")
try:
fh.write("Exception handeling")
finally:
print "Going to close the file"
fh.close()
except IOError:
print "Error: can\'t find file or read data"

Järeldus

Igas programmeerimiskeeles on erandite esilekutsumise protsess, kui ta tuleb silmitsi ootamatute olukordade komplektiga ja nende hulgas on ka python, mis loob nende erandite käsitlemiseks põhjalikke tehnikaid, mis teeb sellest tugeva baasi, mida programmeeritav keel osutab.

Soovitatav artikkel

See on olnud Python Exception Handlingi juhend. Siin käsitleme tavapäraste erandite loendit ja protsessi koos süntaksiga. Lisateavet leiate ka meie muudest soovitatud artiklitest -

  1. Pythoni eelised
  2. Pythoni raamid
  3. Mustrid Pythonis
  4. Pythoni koostajad
  5. Erandite käsitlemine VB.NET-is (näited)
  6. Sõnastik Pythonis
  7. VB.Net sündmused

Kategooria: