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

«Что такое словарь (dict) в Python?» — вопрос из категории Python, который задают на 26% собеседований Data Scientist / ML Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Словарь (dict) — это встроенная изменяемая коллекция, хранящая пары объектов в формате ключ: значение. Ключи должны быть уникальными и хешируемыми (неизменяемыми типами, такими как str, int, float, tuple), а значения могут быть любого типа.

Основные операции:

# Создание
person = {'name': 'Alice', 'age': 30, 'city': 'London'}

# Доступ по ключу
print(person['name'])  # Alice

# Безопасный доступ с get()
print(person.get('job', 'Not specified'))  # Not specified

# Добавление или обновление
person['job'] = 'Engineer'

# Удаление
removed_value = person.pop('city')
del person['age']

# Итерация
for key, value in person.items():
    print(f'{key}: {value}')

Ключевые особенности:

  • Оптимизирован для быстрого поиска значения по ключу (в среднем O(1)).
  • Начиная с Python 3.7, словари сохраняют порядок добавления элементов.
  • Полезные методы: keys(), values(), items(), update(), setdefault().
  • Словари часто используются для представления JSON-подобных структур, кэшей, подсчета элементов (через collections.Counter).