Встречается на собеседованиях • сегодня

Какой надежный способ узнать хешируемый ли объект

В Python объект считается хешируемым, если он имеет метод __hash__() и его хеш-значение никогда не меняется. Надежный способ проверить хешируемость — использовать функцию hash(), которая вызовет TypeError для нехешируемых объектов.

python
def is_hashable(obj):
    try:
        hash(obj)
        return True
    except TypeError:
        return False

print(is_hashable(42))       # True (int хешируем)
print(is_hashable("hello"))  # True (str хешируем)
print(is_hashable([1, 2]))   # False (list нехешируем)
print(is_hashable((1, 2)))   # True (tuple хешируем, если элементы хешируемы)

Важно: Кортеж хешируем только если все его элементы хешируемы. Например, ([1, 2], 3) вызовет TypeError, так как содержит список.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы