assert проверяет условие и при ложном результате возбуждает AssertionError. Он подходит для внутренних инвариантов и тестов, но не для обязательной проверки пользовательского ввода или прав доступа.
Что делает оператор assert?
assert проверяет условие и при ложном результате возбуждает AssertionError. Он подходит для внутренних инвариантов и тестов, но не для обязательной проверки пользовательского ввода или прав доступа.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
assert проверяет условие и при ложном результате возбуждает AssertionError. Он подходит для внутренних инвариантов и тестов, но не для обязательной проверки пользовательского ввода или прав доступа.
Запись assert condition, message добавляет сообщение ошибки. При оптимизированном запуске Python с -O assert может быть удалён, поэтому нельзя помещать в него действия, от которых зависит логика. Для обязательной валидации используют обычный if и явное исключение. Сообщение должно помогать диагностике, не раскрывая секреты или чувствительные данные.