Junior — Middle
66
¿Cuáles son las condiciones y reglas principales para usar claves en diccionarios de Python?
Empresas donde se preguntó
Respuesta de la IA
sobes.tech AI
В Python ключи словаря должны удовлетворять следующим условиям:
- Быть хешируемыми (hashable). Это значит, что объект должен иметь неизменяемое состояние и реализовывать метод
__hash__(). - Быть сравнимыми на равенство через
__eq__(), чтобы словарь мог корректно определять, совпадают ли ключи.
Чаще всего в качестве ключей используются неизменяемые типы данных, например:
- строки (
str) - числа (
int,float) - кортежи (
tuple), если все их элементы тоже хешируемы
Пример:
my_dict = {}
my_dict["key"] = 123
my_dict[(1, 2)] = "tuple key"
Если попытаться использовать изменяемый тип, например список, как ключ, будет вызвана ошибка TypeError:
my_dict = {}
my_dict[[1, 2]] = "list key" # TypeError: unhashable type: 'list'
Таким образом, ключи должны быть неизменяемыми и хешируемыми объектами, чтобы словарь мог эффективно хранить и искать значения.