Introduzione alla gestione delle eccezioni di Python

Le eccezioni vengono gestite in Python utilizzando due tecniche principali, sono un'asserzione e una gestione delle eccezioni. Discuteremo le tecniche di gestione delle eccezioni di Python in questo capitolo
Qualsiasi evento che devia la normale esecuzione del flusso del programma viene chiamato un'eccezione. Il blocco Try contiene possibili codici di generazione dell'errore. Mettere in ordine e gestire queste eccezioni è un processo eseguito dal blocco di eccezione che viene inserito alla fine di ogni blocco di prova. Un singolo blocco try può associare più di un'eccezione in un determinato momento, mentre il blocco else rientra nella normale sezione del flusso di programma. Tutto il codice in cui non è necessaria la protezione del blocco try viene inserito nel blocco else del programma.

Sintassi:

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

Elenco eccezioni standard

Eccezione: tutte le eccezioni classe base

StopIteration: quando nessun oggetto è puntato dal prossimo metodo dell'iteratore questa eccezione viene sollevata

SystemExit: sollevato attraverso la funzione sys.exit ().

StandardError: Tranne StopIteration e SystemExit, questa funge da classe base per tutte le funzioni integrate.

ArithmeticError: Per tutti gli errori numerici queste eccezioni agire come classe base.

OverflowError: per un tipo numerico se il calcolo supera il valore massimo possibile, questo errore viene generato.

FloatingPointError: il fallimento di un'operazione float dà il via a questo errore

ZeroDivisionError: generato quando si verifica una divisione per zero nel codice

AssertionError: quando l'istruzione assert fallisce, questo errore viene attivato

AttributeError: quando un'assegnazione o un riferimento ad un attributo falliscono, questo genera questo errore

EOFErroR: generato quando non si raggiunge più l'input da nessuna delle funzioni e la fine del file

ImportError: generato durante una dichiarazione di importazione non riuscita .

KeyboardInterrupt: generato quando si verifica un'interruzione dell'esecuzione del programma

LookupError: tutti gli errori di ricerca rientrano in questa classe di base

IndexError: sollevata quando l'indice non trovato

KeyError: generato quando il dizionario non contiene il valore chiave menzionato

NameError: generato per un identificatore mancante a livello locale o globale nel programma

UnboundLocalError: generato quando si utilizza una variabile locale senza assegnarle alcun valore.

EnvironmentError: classe di base per errori orientati all'ambiente che si verificano all'esterno di Python

IOError: generato durante un processo di input / output non riuscito

SyntaxError: tutti gli errori orientati alla sintassi di Python sono gestiti da questa eccezione

IndentationError: un rientro errato porterà a questo tipo di errori

SystemError: questo si verifica in una situazione in cui l'interprete non funziona come previsto, ma questo errore non impedisce l'esecuzione del programma Python

SystemExit: quando la funzione sys.exit () viene utilizzata dall'interprete python, porta a questa eccezione. questo rende il codice terminato in modo anomalo quando non è stato gestito correttamente.

TypeError: Al termine di un'operazione non valida per un particolare tipo di dati, allora questo errore viene richiesto

ValueError: quando una funzione contiene un argomento di tipo valido ma è stato specificato un valore improprio per quell'argomento di tipo

RuntimeError: se una delle suddette categorie non è soddisfatta, viene generato questo errore

NotImplementedError: generato mentre un metodo non creativo che vuole essere messo in pratica in una classe ereditata non è di fatto implementato. Mettere in ordine e gestire queste eccezioni è un processo eseguito dal blocco di eccezione che viene inserito alla fine di ogni blocco di prova.

Processo di gestione delle eccezioni in Python

  • Tranne la clausola con più eccezioni
  • Tranne la clausola senza alcuna eccezione menzionata
  • Tranne la clausola con Argomenti

Di seguito discuteremo il processo di gestione delle eccezioni in Python

1. Tranne la clausola con più eccezioni

Ciò consente a più di una dichiarazione tranne di essere dichiarata in una clausola tranne e tutte queste eccezioni dichiarate possono essere sollevate da questa clausola tranne.

Sintassi:

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

2. Tranne la clausola senza eccezioni

Tutte le eccezioni attivate dal blocco try possono essere elaborate qui.

Sintassi:

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

3. Tranne la clausola con Argomenti

La causa effettiva dell'eccezione verrà trattenuta nel valore dell'argomento

Sintassi:

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

4. Programma di gestione delle eccezioni

Sintassi:

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"

Conclusione

Ogni linguaggio di programmazione ha il processo di sollevare un'eccezione ogni volta che si trova ad affrontare una serie inaspettata di situazioni e Python è uno di questi che produce tecniche profonde per gestire queste eccezioni che lo rendono un linguaggio di programmazione con base solida.

Articolo raccomandato

Questa è stata una guida alla gestione delle eccezioni di Python. Qui discutiamo l'elenco delle eccezioni standard e il processo insieme alla sintassi. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Vantaggi di Python
  2. Python Frameworks
  3. Pattern in Python
  4. Compilatori Python
  5. Gestione delle eccezioni in VB.NET (esempi)
  6. Dizionario in Python
  7. Eventi VB.Net

Categoria: