Python Language
Aumentare errori / eccezioni personalizzati
Ricerca…
introduzione
Python ha molte eccezioni built-in che costringono il tuo programma a generare un errore quando qualcosa in esso va storto.
Tuttavia, a volte potrebbe essere necessario creare eccezioni personalizzate che servono al tuo scopo.
In Python, gli utenti possono definire tali eccezioni creando una nuova classe. Questa classe di eccezioni deve essere derivata, direttamente o indirettamente, dalla classe Exception. La maggior parte delle eccezioni built-in derivano anche da questa classe.
Eccezione personalizzata
Qui, abbiamo creato un'eccezione definita dall'utente, CustomError, derivata dalla classe Exception. Questa nuova eccezione può essere sollevata, come altre eccezioni, usando l'istruzione raise con un messaggio di errore opzionale.
class CustomError(Exception):
pass
x = 1
if x == 1:
raise CustomError('This is custom error')
Produzione:
Traceback (most recent call last):
File "error_custom.py", line 8, in <module>
raise CustomError('This is custom error')
__main__.CustomError: This is custom error
Cattura eccezione personalizzata
Questo esempio mostra come catturare l'eccezione personalizzata
class CustomError(Exception):
pass
try:
raise CustomError('Can you catch me ?')
except CustomError as e:
print ('Catched CustomError :{}'.format(e))
except Exception as e:
print ('Generic exception: {}'.format(e))
Produzione:
Catched CustomError :Can you catch me ?