Встречается на собеседованиях • сегодня
Может ли у 2 ключей словаря быть одинаковый хэш
Да, у двух разных ключей словаря может быть одинаковый хэш. Это называется коллизией хэшей. Python корректно обрабатывает такие ситуации, используя метод разрешения коллизий (например, через цепочки или открытую адресацию).
Пример:
python
class TestKey:
def __hash__(self):
return 1 # Всегда возвращаем один и тот же хэш
a = TestKey()
b = TestKey()
d = {a: 'first', b: 'second'} # Оба ключа имеют одинаковый хэш
print(d[a]) # 'first'
print(d[b]) # 'second'Хотя хэши одинаковы, словарь различает ключи по их идентичности (через __eq__). Если не переопределить __eq__, Python использует сравнение по id объекта.

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