Don't learn to code. Code to learn!

Как распарсить строку json в Python

Hits: 112716

Людям, работающим с веб часто приходится сталкиваться с необходимостью взаимодействовать с объектами JSON (JavaScript Object Notation). Это удобный способ структурированно хранить необходимые данные. Понятное дело, что и на Python должна быть реализация взаимодействия со строками JSON.

Разработчики Python позаботились об этом, поэтому в состав стандартной библиотеки Python входит модуль json. Почитать подробнее о нем можно в официальной документации, а пока мы сконцентрируемся на конкретной задаче:

Распарсить строку json средствами Python.

Представим, что у нас есть следующая строка json, представляющая заказ товара в интернет-магазине:

{
  "orderID": 42,
  "customerName": "John Smith",
  "customerPhoneN": "555-1234",
  "orderContents": [
    {
      "productID": 23,
      "productName": "keyboard",
      "quantity": 1
    },
    {
      "productID": 13,
      "productName": "mouse",
      "quantity": 1
    }
  ],
  "orderCompleted": true
}

Тогда код на Python должен быть следующим:

import json

# строка которую будем парсить
json_string = """ {
  "orderID": 42,
  "customerName": "John Smith",
  "customerPhoneN": "555-1234",
  "orderContents": [
    {
      "productID": 23,
      "productName": "keyboard",
      "quantity": 1
    },
    {
      "productID": 13,
      "productName": "mouse",
      "quantity": 1
    }
  ],
  "orderCompleted": true
} """

# распаршенная строка
parsed_string = json.loads(json_string)

Переменная parsed_string будет иметь тип данных словарь, следовательно любой элемент строки json можно будет получить через необходимый ключ:

 как распарсить строку json на python, python json parsing

Как видите, для того чтобы распарсить строку json средствами Python достаточно воспользоваться встроенной библиотекой этого прекрасного языка программирования.