Назад к вопросам
Junior
90
questionbank
Какими могут быть ключи в словарях в Python?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Ключами в словарях Python могут быть любые неизменяемые (hashable) объекты.
Неизменяемые типы данных включают:
- Целые числа (
int) - Числа с плавающей точкой (
float) - Строки (
str) - Кортежи (
tuple), содержащие только неизменяемые элементы - Булевы значения (
bool) - NoneType (
None) - Frozenset (
frozenset), содержащий только неизменяемые элементы
Примеры допустимых ключей:
# Допустимые ключи
my_dict = {
1: "один",
3.14: "пи",
"ключ": "значение",
(1, 2): "кортеж",
True: "истина",
None: "нет",
frozenset({1, 2}): "неизменяемое множество"
}
Неизменяемые объекты обладают хешем, который используется для быстрого поиска в словаре.
Изменяемые типы данных, такие как списки (list), множества (set) и другие словари (dict), не могут быть ключами словаря, поскольку их содержимое может меняться, что нарушило бы целостность хеша.
Примеры недопустимых ключей:
# Недопустимые ключи (вызовет TypeError)
# my_dict = {
# [1, 2]: "список",
# {1, 2}: "множество",
# {"a": 1}: "другой словарь"
# }