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

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

Да, кортеж можно использовать в качестве ключа в словаре Python.

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

Строки, числа и кортежи являются примерами неизменяемых типов данных, которые могут быть использованы в качестве ключей словаря. Списки и словари, напротив, являются изменяемыми типами данных и не могут использоваться в качестве ключей.

Пример:


my_dict = {
    (1, 2): "Значение 1",
    ("a", "b"): "Значение 2",
    (True, False): "Значение 3"
}

print(my_dict[(1, 2)])  # Вывод: Значение 1
  

Важное замечание: Кортеж может быть использован в качестве ключа только в том случае, если все элементы внутри кортежа тоже являются неизменяемыми. Например, кортеж, содержащий список, не может быть ключом словаря.


# Это вызовет ошибку TypeError: unhashable type: 'list'
# my_dict = {([1, 2], "a"): "Значение"}
  
0