Встречается на собеседованиях • сегодня
Хешируем ли неизменяемый объект в Python
Да, неизменяемые объекты в Python хешируются. Хеш-значение вычисляется на основе содержимого объекта, и поскольку неизменяемые объекты не могут измениться после создания, их хеш остаётся постоянным. Это делает их пригодными для использования в качестве ключей словарей или элементов множеств.
Пример с кодом:
python
# Неизменяемые объекты (хешируются)
tuple_example = (1, 2, 3)
print(hash(tuple_example)) # Работает
# Изменяемые объекты (не хешируются)
list_example = [1, 2, 3]
print(hash(list_example)) # TypeError: unhashable type: 'list'Важно: пользовательские классы по умолчанию хешируются (по id), но если переопределить __eq__, нужно также переопределить __hash__ для сохранения консистентности.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы