Что такое словарь в Python?

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

В Python, словарь (dictionary) - это неупорядоченная, изменяемая (mutable) структура данных, предназначенная для хранения пар "ключ-значение".

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

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

Основные характеристики словарей:

  • Неупорядоченность: В Python версии 3.7 и выше, словари запоминают порядок вставки элементов. В более ранних версиях порядок был непредсказуемым. В любом случае, полагаться на какой-либо определенный порядок ключей без специальной обработки (например, сортировки) не рекомендуется.
  • Изменяемость: Вы можете добавлять, удалять и изменять элементы словаря после его создания.
  • Индексирование по ключу: Доступ к значениям осуществляется по ключу, а не по индексу, как в списках. Это делает поиск значений по ключу очень быстрым.
  • Уникальность ключей: Два одинаковых ключа в одном словаре не допускаются. Если попытаться присвоить значение одному и тому же ключу дважды, более позднее присвоение перезапишет предыдущее.

Пример:

        
            my_dict = {
                "name": "John Doe",
                "age": 30,
                "city": "New York",
                1: "one",
                (1, 2): "tuple key"
            }

            print(my_dict["name"])  # Вывод: John Doe
            print(my_dict[1])        # Вывод: one
            print(my_dict[(1, 2)])   # Вывод: tuple key

            my_dict["age"] = 31  # Изменение значения
            my_dict["occupation"] = "Software Engineer"  # Добавление нового элемента
            del my_dict["city"]  # Удаление элемента

            print(my_dict)
        
    

Операции над словарями:

  • len(my_dict): Возвращает количество элементов в словаре.
  • my_dict.keys(): Возвращает представление ключей словаря.
  • my_dict.values(): Возвращает представление значений словаря.
  • my_dict.items(): Возвращает представление пар (ключ, значение).
  • my_dict.get(key, default): Возвращает значение по ключу, или default, если ключ не найден. Избегает возникновения исключения KeyError.
  • key in my_dict: Проверяет, присутствует ли ключ в словаре.
  • my_dict.pop(key, default): Удаляет элемент с указанным ключом и возвращает его значение. Если ключ не найден, возвращает `default` (если указан) или вызывает `KeyError`.
  • my_dict.update(other_dict): Обновляет словарь, добавляя элементы из другого словаря или итерируемого объекта. Если ключ уже существует, его значение перезаписывается.

Словари - один из наиболее часто используемых типов данных в Python, обеспечивающий эффективное хранение и извлечение данных на основе ключей.

0