Sobes.tech
Back to questions
Junior — Middle
73

Может ли в Python использоваться список в качестве ключа для словаря?

Answer from AI

sobes.tech AI

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

Если нужно использовать последовательность в качестве ключа, можно использовать кортеж (tuple), который является неизменяемым и хешируемым:

my_dict = {}
key = (1, 2, 3)  # кортеж
my_dict[key] = "value"
print(my_dict[(1, 2, 3)])  # выведет "value"

Попытка использовать список вызовет ошибку:

my_dict = {}
key = [1, 2, 3]
my_dict[key] = "value"  # TypeError: unhashable type: 'list'