A linguagem Python fornece a palavra reservada ou comando assert que pode ser utilizada para fins de debug em nossas aplicações.

Sintaxe
assert <condition>
Onde
condition: expressão para validar
Retorno
True: expressão verdadeira. 
False: AssertionError

Quando um assert retorna False, a execução do programa é interrompida imediatamente.

Exemplo 1
valor = -1
desc = "string"

assert desc == "string" or valor == -1 #ok
print(desc,valor);

valor = 0
desc = "olá"

assert desc == "" or valor == -1 #erro
print(desc,valor);
Saída
string -1
Traceback (most recent call last):
  File "/home/main.py", line 10, in 
    assert desc == "" or valor == -1
           ^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError

assert não é recomendado para validações de entrada de dados do usuário tão pouco capturar erro de assert com try-catch.

Caso seja necessário exibir uma mensagem para um assert, isso pode ser feito de acordo com a sintaxe assert abaixo:

Sintaxe
assert <condition>,<error message>
Onde
condition: expressão para validação
error message: mensagem de erro opcional
Retorno
True: expressão verdadeira. 
False: AssertionError
Exemplo 2
lista = [1,2,3]
assert len(lista) > 0,"a lista está vazia."

valor = 0
assert valor != 0,f"o valor {valor} não aceito" #interpolaçã
Saída
Traceback (most recent call last):
  File "/home/main.py", line 18, in 
    assert valor != 0,f"{valor} não aceito"
           ^^^^^^^^^^
AssertionError: o valor 0 não aceito

De forma semelhante ao que foi visto, podemos utilizar asserts em métodos e funções para fins de debug.

Exemplo 3
def funcao(valor):
    assert valor != 0,f"o valor {valor} não aceito"
    print(valor)
    
funcao(0)
  1. 09/06/2025 - versão inicial