Menu
Coddy logo textTech

Eccezione definita dall'utente

Lezione 12 di 16 del corso Gestione delle eccezioni in Python di Coddy.

Come creare un'eccezione definita dall'utente?:

Ci sono tre passaggi:

1. Crea una classe Exception ereditando dalla classe 'Exception'.

2. Solleva l'eccezione creata `per una condizione specifica.

3. Gestisci quell'eccezione.

D. Supponiamo che io voglia evitare la «divisione per cinque» nel mio programma. Voglio che venga generata un'eccezione se l'utente prova a dividere per 5.

#step-1: Creazione della classe Exception
class FiveDivisionError(Exception):
	pass

FiveDivisionError è un'eccezione creata da noi. Puoi creare anche un costruttore e configurare un messaggio. Ma configureremo il messaggio nell'istruzione raise.

#step-2: solleva un'Exception per una condizione specifica
try:
	a = int(input("1st Number:"))
	b = int(input("2nd Number:"))
	if b == 5:
		raise FiveDivisionError("Cannot divide by five")
	div = a/b
	print("Division:",div)

Nello snippet qui sopra, abbiamo sollevato FiveDivisionError se la condizione b == 5 è soddisfatta. Abbiamo usato il blocco try per gestire l'eccezione.

#step-3: Gestisci Exception usando except
except Exception as obj:
	print(obj)

Lo snippet qui sopra gestirà l'eccezione che si è verificata. Ora tocca a te risolvere un altro problema.

challenge icon

Sfida

Facile

L’età verrà passata alla tua funzione 'access'. Completa la funzione in modo che stampi "Access Denied!" e interrompa l’esecuzione della funzione se l’età è inferiore a 18. Altrimenti, stampa "Session Created!". Usa solo la gestione delle Exception. Crea un’eccezione personalizzata 'AccessError'.

Provalo tu

def access(age):
    pass

Tutte le lezioni di Gestione delle eccezioni in Python

Esercitati da solo: Compilatore Python online