Sobes.tech
Back to questions
Junior — Middle
64

Классифицируйте типы ключей, используемых в словарях Python.

Companies where asked
AstonAston

Answer from AI

sobes.tech AI

В Python ключи словаря должны быть хешируемыми объектами, то есть неизменяемыми и поддерживающими метод hash().

Типы ключей можно классифицировать так:

  • Простые неизменяемые типы: строки (str), числа (int, float), кортежи (tuple) — если все элементы кортежа тоже хешируемы.
  • Пользовательские объекты: объекты классов, если они реализуют методы hash и eq корректно.

Нельзя использовать изменяемые типы, такие как списки (list), словари (dict), множества (set) в качестве ключей, так как они не хешируемы.

Пример:

my_dict = {
    'key_str': 1,
    42: 'value',
    (1, 2): 'tuple_key'
}