raise Lançar exceção ativamente
Última atualização: 2026-09-22
raise Lançar exceção ativamente
raise lança ativamente uma exceção (pode especificar o tipo e a mensagem, ou relançar a exceção atual).
| Categoria | Palavras-chave e Instruções |
|---|---|
| Tipo | Palavra-chave / Instrução |
| Versão do Python | all |
📝 Sintaxe
raise [ExceptionType [from other]]
raise
▶ Exemplo
Edite o código, clique em Executar e veja o resultado no painel de saída:
Saída:
caught: must be >= 0
🏷️ Palavras-chave / Instruções relacionadas
💡 Casos relacionados
Mais estudos de caso em breve — aguarde.
❓ Perguntas frequentes
QQual é a diferença entre `raise` e `assert`?
A`raise` levanta uma exceção incondicionalmente, usado para validar entrada e relatar erros de negócio. `assert` só levanta `AssertionError` quando a condição é falsa, e é inteiramente desativado sob `python -O`, então não serve para validação formal.
QO que significa um `raise` puro dentro de um bloco `except`?
AUm `raise` puro relança a exceção sendo processada, preservando o traceback original. Costuma ser usado depois de registrar em log ou fazer limpeza, para continuar propagando a exceção para fora.
QQual é a diferença entre `raise ValueError('msg')` e `raise ValueError`?
AO primeiro carrega uma mensagem de erro, então os chamadores veem o motivo via `str(e)` e o debug é mais fácil; o segundo não tem mensagem. Recomenda-se sempre fornecer uma mensagem significativa.