Python · Essencial · Inglês · Técnico
raise
Palavra-chave que dispara uma exceção de propósito, interrompendo o fluxo até algum except tratá-la. Sozinha dentro de um except, relança a exceção atual.
Onde usar
Usada para validar argumentos e sinalizar estados inválidos, em vez de devolver códigos de erro. Num code review, importa escolher o tipo certo, como ValueError ou TypeError.
Em código
def dividir(a, b):
if b == 0:
raise ValueError('b não pode ser 0')
return a / bExemplos
Raise a ValueError if the age is negative.
Lance um ValueError se a idade for negativa.
A bare raise inside except re-raises the same error.
Um raise sozinho dentro do except relança o mesmo erro.
Cuidado
Não confunda com return: devolver um objeto de erro não interrompe nada. Evite também lançar Exception genérica.
Sinônimos
lançar exceção
Origem
Do inglês raise, 'levantar': a exceção é levantada até alguém tratá-la.