Оператор assert 

Оператор assert в Python: объяснение на примерах.

Интересная Ссылка Ну или эта ссылка

Python – это универсальный язык программирования, позволяющий выполнять практически любые вычислительные задачи. Он обладает огромным количеством встроенных модулей, функций и ключевых слов, которые могут быть чрезвычайно полезны. Один из таких операторов – assert. Именно о нем мы поговорим сегодня.

Оператор assert – это встроенный оператор или ключевое слово в Python, используемое для отладки кода. Это своего рода проверка, которая исследует функциональность вашего кода.

Оператор assert работает как логическое выражение, проверяя, является ли заданное условие истинным или ложным. Если условие истинно, то ничего не происходит и выполняется следующая строка кода. Если же условие ложно, оператор assert останавливает выполнение программы и выдает ошибку. В этом случае assert работает как ключевое слово raise и выводит исключение. Исключение, вызванное оператором assert, также называется AssertionError.

В этой статье мы рассмотрим оператор assert в Python и разберем принципы его работы на нескольких примерах.

Синтаксис

Синтаксис использования оператора assert следующий:

 assert <условие>

Также можно добавить дополнительное сообщение, которое будет выводиться при ошибке. В таком случае синтаксис assert будет следующий:

 assert <условие>, <текст>

Примеры

Чтобы разобраться, как пользоваться оператором assert на практике, давайте обсудим несколько примеров.

При выполнении операции деления следует учитывать, что на ноль делить нельзя. Если делитель будет равен нулю, программа вызовет ошибку ZeroDivisionError. Чтобы проверить, не равен ли делитель нулю, можно вставить оператор assert. Давайте реализуем это на Python.

num1 = 10
num2 = 0
assert num2 != 0, "Делитель равен нулю"

В assert мы указали условие, что num2 (делитель) не должен быть равен нулю. Данное условие не выполняется, потому что значение num2 равно нулю.

Интерпретатор Python выдает ошибку AssertionError вместе с добавленным нами сообщением «Делитель равен нулю».

Теперь давайте изменим значение num2 и выполним нашу программу снова. На этот раз утверждение assert истинно, так что в этом случае ничего не произойдет. Ошибка не появляется, вместо этого выполняется следующая строка. Таким образом, на экран выведется результат деления — 1.0.

num1 = 10
num2 = 10
assert num2 != 0, "Делитель равен нулю"
print("В результате получается:", num1/num2)

Теперь давайте разберем другой пример. Напишем условие assert для проверки корректности строки.

val = "Pythonist"
assert val != "Pythonist", "Условие является ложным"

Условие не выполняется, поэтому выводится AssertionError.

Можно привести и альтернативный вариант примера со строкой:

val = "hello"
assert val == "Pythonist", "Значение переменной не равно Pythonist"

Значение переменной val – hello. Это означает, что условие ложно, и программа выведет ошибку AssertionError с нашим комментарием — «Значение переменной не равно Pythonist».

Заключение

Оператор assert – это встроенный оператор в Python, позволяющий отлаживать код. Этот оператор принимает условие и необязательное сообщение, которое выводится, если условие assert ложно.

В этом случае инструкция assert выводит AssertionError. Если условие истинно, то ничего не происходит и выполняется следующая строка кода.

В этой статье мы подробно объяснили принцип работы оператора assert и разобрали его на примерах.