object() создаёт новый минимальный объект базового типа object. Его часто используют как уникальный sentinel, чтобы отличать отсутствие значения от допустимого None.
Как работает функция object()?
object() создаёт новый минимальный объект базового типа object. Его часто используют как уникальный sentinel, чтобы отличать отсутствие значения от допустимого None.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
object() создаёт новый минимальный объект базового типа object. Его часто используют как уникальный sentinel, чтобы отличать отсутствие значения от допустимого None.
Два отдельных вызова object() создают разные объекты, поэтому object() is object() возвращает False. Созданному экземпляру нельзя произвольно добавлять атрибуты как обычному пользовательскому классу с __dict__. Для sentinel сохраните один экземпляр: missing = object(), а затем сравнивайте результат с ним через is. Новый object при каждой проверке никогда не будет тем же маркером.