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ù -
- Vantaggi di Python
- Python Frameworks
- Pattern in Python
- Compilatori Python
- Gestione delle eccezioni in VB.NET (esempi)
- Dizionario in Python
- Eventi VB.Net