Словари в Python: как хранить данные по ключу

Почему словарь напоминает карточку объекта и как он помогает работать с заказами, пользователями и данными из API.

Словарь в Python помогает хранить данные объекта по понятным именам. У заказа есть номер, сумма, статус и покупатель; у пользователя — имя, email и роль. Вместо того чтобы помнить, на какой позиции лежит нужное значение, можно обратиться к нему по ключу: order["status"].

Почему словари так часто встречаются в backend-разработке

Когда данные описывают объект с несколькими свойствами, словарь выглядит естественнее длинного списка. Читатель кода сразу видит, что означает поле total или customer, а не пытается угадать смысл третьего элемента.

Словари особенно важны при работе с веб-данными. JSON-объект, который приходит от API, после обработки в Python обычно становится словарём. Поэтому умение читать ключи и значения постепенно превращается в важную часть backend-разработки.

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

Обязательные и необязательные данные

Квадратные скобки используют, когда поле обязательно. Если в заказе нет идентификатора или статуса, это повод сразу увидеть ошибку: такая запись неполна. Метод .get() подходит для необязательных полей. Он позволяет получить значение по ключу или вернуть запасной вариант, если ключа нет.

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

Когда данные приходят из внешнего сервиса, осторожное обращение к необязательным полям особенно полезно. Внешний API может вернуть неполный объект, пользователь может не заполнить часть формы, а в старых данных может отсутствовать новое поле. Код должен понимать, какие данные критичны, а какие можно обработать мягко.

Небольшой пример

order = {
    "id": 1042,
    "customer": "Анна",
    "status": "paid",
    "total": 1990,
}

print(order["status"])
print(order.get("promo_code", "Промокод не указан"))

order["status"] = "shipped"

Статус здесь обязателен, поэтому его читают напрямую. Промокод может отсутствовать, поэтому .get() возвращает запасное значение, не останавливая программу.

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

Что почитать дальше

Словари начинают по-настоящему работать в задачах, где есть данные пользователя, заказ или ответ API. В курсе «Python: основы» ты сможешь закрепить этот подход на практических примерах.

Назад к списку

Обучение и развитие