Uvod u rukovanje iznimkama Python-a
Iznimke se u pythonu obrađuju pomoću dvije glavne tehnike, oni su tvrdnja i rukovanje iznimkama. Mi ćemo raspravljati o tehnikama rukovanja iznimkama s pitonom u ovom poglavlju
Svaki događaj koji onemogućuje normalno izvršavanje protoka programa naziva se iznimkom. Pokušajte blokirati sadrži moguće kodove generiranja pogrešaka. Redoslijed i upravljanje ovim iznimkama postupak je koji provodi izuzev bloka koji je umetnut na kraju svakog pokušajnog bloka. Jedan blok pokušaja može pridružiti više iznimki u određeno vrijeme, a drugi blok spada pod uobičajeni odjeljak protoka programa. Sav kôd u kojem nije potrebna zaštita za blok postavlja se u drugi blok programa.
Sintaksa:
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
Popis standardnih izuzeća
Izuzetak: Sve osnovne iznimke
StopIteration: kada nijedan objekt ne pokazuje sljedećom metodom iteratora, postavlja se ova iznimka
SystemExit: podiže se kroz sys.exit () funkciju.
StandardError: Osim StopIteration i SystemExit, ovo djeluje kao osnovna klasa za sve ugrađene funkcije.
ArithmeticError: Za sve numeričke pogreške ove iznimke djeluju kao osnovna klasa.
OverflowError: Za numerički tip ako izračun premašuje maksimalnu moguću vrijednost, tada se ta greška podiže.
FloatingPointError: neuspjeh operacije plutanja pokreće ovu pogrešku
ZeroDivisionError: Postavlja se kada se u kodu dogodi podjela na nulu
AssertionError: Kad se tvrdnja tvrdnja odbije, tada se aktivira ova greška
AttributeError: Kada dodjeljivanje ili referenca atributa ne uspiju, tada se pojavljuje ova pogreška
EOFErroR: Pojavljuje se kada više ne dođe do unosa bilo koje funkcije i kraja datoteke
ImportError: povisuje se dok uvozna deklaracija ne uspije.
KeyboardInterrupt: Pojavljuje se kada dođe do prekida izvršenja programa
LookupError: Sve pogreške pretraživanja spadaju u ovu osnovnu klasu
IndexError: povisuje kada indeks nije pronađen
KeyError: Postavlja se kada rječnik ne sadrži spomenutu ključnu vrijednost
NameError: Podignut je zbog nedostajućeg identifikatora lokalno ili globalno u programu
UnboundLocalError: povisuje se pri korištenju lokalne varijable, a da joj nije dodijeljena nijedna vrijednost.
EnvironmentError: Bazna klasa za pogreške orijentirane na okoliš koje se javljaju izvan pythona
IOError: Pojavljuje se dok postupak unosa / izlaza nije bio uspješan
SyntaxError: Sve iznimke u python orijentaciji upravljaju se ovom iznimkom
IndentationError: Nepravilna uvlačenja dovest će do takve pogreške
SystemError: To se događa u situaciji kada tumač ne radi onako kako se očekivalo, ali ova pogreška ne čini da program python izlazi iz izvršenja
SystemExit: Kad funkciju sys.exit () koristi tumač python-a, tada to vodi do ove iznimke. zbog toga se kôd nenormalno prekida kada se s njim ne rukuje pravilno.
TypeError: Kad je operacija nevaljana za određenu vrstu podataka, tada se traži ta pogreška
ValueError: Kada funkcija sadrži valjani argument tipa, ali je za taj argument argumenata navedena neprimjerena vrijednost
RuntimeError: Ako bilo koja od gore navedenih kategorija nije zadovoljena, tada se pojavljuje ova pogreška
NotImplementedError: Napravljeno dok se nefigurativna metoda koja se želi primijeniti u naslijeđenu klasu u stvari ne provodi. Redoslijed i upravljanje ovim iznimkama postupak je koji provodi izuzev bloka koji je umetnut na kraju svakog pokušajnog bloka.
Proces rukovanja iznimkama u Pythonu
- Osim klauzule s više izuzetaka
- Osim spomenute klauzule bez iznimke
- Osim klauzule s Argumentima
U nastavku ćemo raspravljati o postupku rukovanja iznimkama u Pythonu
1. Osim klauzule s višestrukim iznimkama
To dopušta da se više izuzeva osim jedne izjave deklarira u jednoj osim klauzule i sve ove deklarirane iznimke mogu se podići iz ove, osim klauzule.
Sintaksa:
try: Code block1
except(Exception1(, Exception2(, …ExceptionN)))):
Executes when one among the exception happens
else: Executed when no exception is raised
2. Osim klauzule bez iznimke
Ovdje mogu se obraditi sve iznimke pokrenute u pokušaju.
Sintaksa:
try:
Code block1
except:
Executes if any type of exception happens
else:
If there is no exception then execute this block
3. Osim klauzule s Argumentima
Stvarni uzrok iznimke zadržat će se u vrijednosti argumenta
Sintaksa:
try:
Code block1except
ExceptionType, Argument:
Argument value is printed here
4. Program za rukovanje iznimkama
Sintaksa:
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"
Zaključak
Svaki programski jezik drži postupak podizanja iznimke kad god se suoči s neočekivanim nizom situacija, a python je jedan od njih koji proizvodi duboke tehnike rukovanja tim iznimkama, što ga čini jakim osnovnim programskim jezikom.
Preporučeni članak
Ovo je vodič za rukovanje iznimkama Python-a. Ovdje smo raspravljali o standardnom popisu izuzetaka i procesu zajedno sa sintaksom. Možete i proći naše druge predložene članke da biste saznali više -
- Prednosti Pythona
- Okviri Python-a
- Uzorci u Pythonu
- Python sastavljači
- Rukovanje izuzecima u VB.NET (Primjeri)
- Rječnik na Pythonu
- VB.Net Događaji