Заявление Python Assert

В этой статье мы узнаем об утверждении в Python с помощью assert.

Что такое утверждение?

Утверждения - это утверждения, которые уверенно утверждают или констатируют факт в вашей программе. Например, при написании функции деления вы уверены, что делитель не должен быть нулевым, вы утверждаете, что делитель не равен нулю.

Утверждения - это просто логические выражения, которые проверяют, возвращают ли условия истинность или нет. Если это правда, программа ничего не делает и переходит к следующей строке кода. Однако, если оно ложно, программа останавливается и выдает ошибку.

Это также инструмент отладки, так как он останавливает программу, как только возникает какая-либо ошибка, и показывает, в какой точке программы произошла ошибка.

Мы можем прояснить ситуацию, посмотрев на блок-схему ниже:

Заявление Python assert

Python имеет встроенный assertоператор для использования в программе условия утверждения. assertВ заявлении есть условие или выражение, которое должно быть всегда истинным. Если условие ложно, assert останавливает программу и дает команду AssertionError.

Синтаксис для использования Assert в Pyhton:

 утверждать 
 утверждать,

В Python мы можем использовать assertоператор двумя способами, как указано выше.

  1. assertОператор имеет условие, и если условие не выполняется, программа остановится и выдаст ошибку AssertionError.
  2. assertОператор также может иметь условие и необязательное сообщение об ошибке. Если условие не выполняется, assert останавливает программу и выдает AssertionErrorсообщение об ошибке.

Давайте возьмем пример, где у нас есть функция, которая будет вычислять среднее значение значений, переданных пользователем, и значение не должно быть пустым списком. Мы будем использовать assertоператор для проверки параметра, и если длина переданного списка равна нулю, программа останавливается.

Пример 1: Использование assert без сообщения об ошибке

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

Когда мы запустим вышеуказанную программу, вывод будет:

 AssertionError

Мы получили ошибку, поскольку мы передали пустой список mark1 в assertоператор, условие стало ложным, а assert останавливает программу и дает AssertionError.

Теперь давайте передадим другой список, который будет удовлетворять assertусловию, и посмотрим, что будет на выходе.

Пример 2: Использование assert с сообщением об ошибке

 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))

Когда мы запустим вышеуказанную программу, вывод будет:

 Среднее значение mark2: 78,0 AssertionError: список пуст.

Мы передали в функцию непустой список mark2, а также пустой список mark1, avg()и получили результат для списка mark2, но после этого мы получили ошибку AssertionError: List is empty. Это assertусловие было удовлетворено списком mark2 и программой для продолжения работы. Однако mark1 не удовлетворяет этому условию и дает AssertionError.

Ключевые моменты, которые следует помнить

  • Утверждения - это условие или логическое выражение, которые всегда должны выполняться в коде.
  • assert оператор принимает выражение и необязательное сообщение.
  • assert Оператор используется для проверки типов, значений аргументов и вывода функции.
  • assert Оператор используется как инструмент отладки, поскольку он останавливает программу в точке, где возникает ошибка.

Интересные статьи...