Встречается на 1% собеседований по Python
Какая связь между hash-функцией и изменяемостью/неизменяемостью типов
Хеш-функция требует, чтобы объект был неизменяемым, так как хеш используется в словарях и множествах для быстрого доступа. Если объект изменится после добавления в коллекцию, его хеш тоже изменится, что приведёт к ошибкам поиска.
Пример:
python
# Кортеж (неизменяемый) — хешируемый
hash((1, 2)) # Работает
# Список (изменяемый) — не хешируемый
hash([1, 2]) # TypeError: unhashable type: 'list'Неизменяемые типы (int, str, tuple, frozenset) реализуют __hash__, а изменяемые (list, dict, set) — нет. Если переопределить __hash__ для изменяемого класса, это нарушит логику работы словарей.

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