AssertionError: ошибка, возникающая при некорректном утверждении в программировании
AssertionError - это ошибка, которая возникает в результате несоответствия ожидаемого значения и фактического значения внутри условного оператора assert. Она используется для проверок, которые должны быть истинны в рамках процесса отладки приложений или тестирования приложений.
Пример кода:
def add_numbers(a,b):
assert isinstance(a,int) , "a должно быть целым числом"
assert isinstance(b,int) , "b должно быть целым числом"
return a+b
print(add_numbers(10,20)) # 30
print(add_numbers('10',20)) # AssertionError: a должно быть целым числом
В этом примере функция add_numbers принимает два аргумента a и b, но сначала проверяет, являются ли они целыми числами с помощью assert. Если какой-либо из аргументов не является целым числом, возникает AssertionError с соответствующим сообщением.
Вот еще один пример:
def division(a,b):
assert(b!=0), "Деление на ноль недопустимо"
return a/b
print(division(10,2)) # 5.0
print(division(10,0)) # AssertionError: Деление на ноль недопустимо
Здесь функция division выполняет деление двух аргументов a и b, но перед этим проверяет, не является ли b нулем. Если b равен нулю, то возникает AssertionError с соответствующим сообщением.
В общем случае, использование assert необходимо при отладке, но следует избегать использования его в production коде, так как это может привести к остановке выполнения программы в случае возникновения ошибки.