Declaração Python Assert

Neste artigo, aprenderemos sobre asserção em Python usando assert.

O que é afirmação?

Asserções são declarações que afirmam ou declaram um fato com segurança em seu programa. Por exemplo, ao escrever uma função de divisão, você está confiante de que o divisor não deve ser zero, você afirma que divisor não é igual a zero.

Asserções são simplesmente expressões booleanas que verificam se as condições retornam verdadeiras ou não. Se for verdade, o programa não faz nada e passa para a próxima linha de código. No entanto, se for falso, o programa para e emite um erro.

É também uma ferramenta de depuração, pois interrompe o programa assim que ocorre algum erro e mostra em que ponto do programa ocorreu o erro.

Podemos ser claros observando o fluxograma abaixo:

Declaração Python assert

Python tem uma assertinstrução embutida para usar a condição de asserção no programa. assertdeclaração tem uma condição ou expressão que deve ser sempre verdadeira. Se a condição for falsa, assert interrompe o programa e fornece um AssertionError.

Sintaxe para usar Assert em Pyhton:

 afirmar 
 afirmar,

Em Python, podemos usar a assertinstrução de duas maneiras, conforme mencionado acima.

  1. assertdeclaração tem uma condição e se a condição não for satisfeita o programa irá parar e dar AssertionError.
  2. assertdeclaração também pode ter uma condição e uma mensagem de erro opcional. Se a condição não for satisfeita, o assert interrompe o programa e exibe AssertionErrora mensagem de erro.

Vejamos um exemplo, onde temos uma função que irá calcular a média dos valores passados ​​pelo usuário e o valor não deve ser uma lista vazia. Usaremos a assertinstrução para verificar o parâmetro e se o comprimento da lista passada for zero, o programa será interrompido.

Exemplo 1: usando assert sem mensagem de erro

 def avg(marks): assert len(marks) != 0 return sum(marks)/len(marks) mark1 = () print("Average of mark1:",avg(mark1))

Quando executamos o programa acima, a saída será:

 AssertionError

Recebemos um erro quando passamos uma lista vazia mark1 para o comando assert, a condição se tornou falsa e o assert para o programa e dá AssertionError.

Agora vamos passar outra lista que irá satisfazer a assertcondição e ver qual será a nossa saída.

Exemplo 2: Usando assert com mensagem de erro

 def avg(marks): assert len(marks) != 0,"List is empty." return sum(marks)/len(marks) mark2 = (55,88,78,90,79) print("Average of mark2:",avg(mark2)) mark1 = () print("Average of mark1:",avg(mark1))

Quando executamos o programa acima, a saída será:

 Média de mark2: 78,0 AssertionError: A lista está vazia.

Passamos uma lista não vazia mark2 e também uma lista vazia mark1 para a avg()função e obtivemos a saída para a lista mark2, mas depois disso tivemos um erro AssertionError: List is empty. A assertcondição foi satisfeita pela lista mark2 e pelo programa para continuar em execução. No entanto, mark1 não satisfaz a condição e fornece um AssertionError.

Pontos-chave a serem lembrados

  • Asserções são a condição ou expressão booleana que sempre deve ser verdadeira no código.
  • assert declaração leva uma expressão e uma mensagem opcional.
  • assert declaração é usada para verificar tipos, valores de argumento e a saída da função.
  • assert instrução é usada como ferramenta de depuração, pois para o programa no ponto em que ocorre um erro.

Artigos interessantes...