Sobes.tech
Back to questions
Junior — Middle
76

Почему в Python список нельзя использовать в качестве ключа для словаря?

Answer from AI

sobes.tech AI

В Python ключи словаря должны быть хешируемыми (immutable), чтобы гарантировать постоянство их значения при использовании в хеш-таблице. Списки являются изменяемыми объектами, поэтому они не могут быть хешируемыми и не могут использоваться в качестве ключей словаря. Если нужно использовать последовательность как ключ, можно применить кортеж, который является неизменяемым и хешируемым типом.

Пример:

my_dict = {}
my_dict[[1, 2, 3]] = "value"  # Ошибка TypeError

my_dict[(1, 2, 3)] = "value"  # Работает корректно