Jeżeli nasz program rozpozna pewną błędną sytuację, możemy zgłosić (raise) wyjątek.
# Określamy nasz nowy wyjątek jako string. BadNumberError = "BadNumberError" BadNumberMessage = "13 przynosi pecha" def read_number(): number = int(raw_input("Podaj liczbę: ")) if number == 13: # nie podoba nam się liczba 13 raise BadNumberError, BadNumberMessage return number try: n = read_number() except BadNumberError: print ( "przechwycenie BadNumberError" )
Wyjątki oparte na łańcuchach znaków zniknęły w Pythonie 2.6+ i 3.x. Obecnie korzysta się z wyjątków opartych na klasach.