Bevezetés a Python kivételkezelésbe

A kivételeket a pythonban két fő módszerrel kezelik, ezek állítások és kivételek kezelése. Ebben a fejezetben a python kivétel kezelésének technikáit tárgyaljuk
Minden olyan eseményt, amely eltéríti a programfolyamat normál végrehajtását, kivételnek nevezzük. Próbálja ki a blokkot, amelyben lehetséges a kódok generálása. Rendezés és az ezeknek a kivételeknek a kezelése a kivétel blokk által végrehajtott folyamat, amelyet minden egyes próbablokk végére beillesztünk. Egyetlen próbablokk egynél több kivételt társíthat egy adott időpontban, a másik blokk a szokásos programáramlási szakasz alá esik. Minden olyan kód, amelyre nincs szükség blokkoló védelemre, a program egyéb blokkjába kerül.

Szintaxis:

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

Szabványos kivételek listája

Kivétel: Minden kivétel alaposztálya

StopIteration: ha az iterator következő módszerével semmilyen tárgyat nem mutat meg, akkor ez a kivétel felmerül

SystemExit: Emelés a sys.exit () függvényen keresztül.

StandardError: A StopIteration és a SystemExit kivételével ez az összes beépített funkció alaposztálya.

ArithmeticError: Az összes numerikus hiba esetén ezek a kivételek alaposztályként működnek.

OverflowError: numerikus típus esetén, ha a számítás meghaladja a maximális lehetséges értéket, akkor ezt a hibát felveszi.

FloatingPointError: Az úszóművelet sikertelensége ezt a hibát indítja el

ZeroDivisionError: Emelkedett, amikor a kód nullával osztja a helyzetet

AssertionError: Ha az érvényesítési nyilatkozat sikertelen, akkor ezt a hibát váltja ki

AttributeError: Ha egy hozzárendelés vagy attribútumhivatkozás sikertelen, akkor felveszi ezt a hibát

EOFErroR: Emelés, amikor a függvény és a fájl vége egyikét sem érinti tovább

ImportError: Emelés, miközben a behozatali nyilatkozat sikertelen.

KeyboardInterrupt: Emelés, ha megszakadt a program végrehajtása

LookupError: Az összes keresési hiba ebbe az alaposztályba tartozik

IndexError: Emelés, ha az index nem található

KeyError: Emelkedik, ha a szótár nem tartja meg az említett kulcsot

NameError: Helyileg vagy globálisan hiányzik az azonosító miatt a programban

UnboundLocalError: Helyi változó használata esetén emelik, anélkül, hogy értéket rendelne hozzá.

EnvironmentError: A pythonon kívüli környezet-orientált hibák alaposztálya

IOError: Emelés, miközben a bemeneti / kimeneti folyamat sikertelen

SyntaxError: Az összes python szintaxisorientált hibát ez a kivétel kezeli

IndentationError: A helytelen behúzás ilyen típusú hibákat eredményez

SystemError: Ez akkor fordul elő, amikor az értelmező nem a várt módon működik, de ez a hiba nem teszi a python programot végrehajtásból

SystemExit: Ha a Python-értelmező a sys.exit () függvényt használja, akkor ez a kivételhez vezet. ez miatt a kód rendellenesen megszűnik, ha nem megfelelően kezelik.

TypeError: Ha egy művelet érvénytelen egy adott adattípusra, akkor erre a hibára szólít fel

ValueError: Ha egy függvény érvényes típusú argumentummal rendelkezik, de a típus argumentumának nem megfelelő értéke van megadva

RuntimeError: Ha a fenti kategóriák bármelyike ​​nem teljesül, akkor ez a hiba felmerül

NotImplementedError: Emelés, míg egy nem- konfigurációs módszert, amelyet öröklött osztályban kell gyakorolni, valójában nem valósítják meg. Rendezés és az ezeknek a kivételeknek a kezelése a kivétel blokk által végrehajtott folyamat, amelyet minden egyes próbablokk végére beillesztünk.

Kivételkezelési folyamat Pythonban

  • Kivétel több kivétellel
  • Kivétel kivételével, kivétel nélkül
  • Kivéve az érvekkel kapcsolatos záradékot

Az alábbiakban a Kivételkezelési folyamatot tárgyaljuk Pythonban

1. Kivéve a több kivételű záradékot

Ez lehetővé teszi, hogy egynél több nyilatkozatot egyetlen kivétellel deklaráljunk, kivéve a záradékot, és e kijelentések mindegyikét kivonhatjuk ebből a záradékból.

Szintaxis:

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

2. Kivétel nélkül, kivétel nélkül

A try blokk által kiváltott összes kivétel itt feldolgozható.

Szintaxis:

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

3. Kivéve az érvekkel kapcsolatos záradékot

A kivétel tényleges okát az argumentum értéke tartalmazza

Szintaxis:

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

4. Kivételkezelő program

Szintaxis:

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"

Következtetés

Minden programozási nyelv fenntartja a kivétel felállításának folyamatát, amikor váratlan helyzethelyzettel szembesül, és a python is egyike, amely mélyreható technikákat állít elő ezeknek a kivételeknek a kezelésére, és ez erős bázisú programozási nyelvet jelent.

Ajánlott cikk

Ez egy útmutató a Python kivételkezeléshez. Itt tárgyaljuk a szokásos kivételek listáját és a folyamatot a Szintaxis mellett. A további javasolt cikkeken keresztül további információkat is megtudhat -

  1. A Python előnyei
  2. Python keretek
  3. Minták Pythonban
  4. Python összeállítók
  5. Kivételkezelés a VB.NET-ben (példák)
  6. Szótár Pythonban
  7. VB.Net események

Kategória: