Форматирование JSON в Python
В прошлой статье мы узнали об основах работы с JSON в Python. А в этой продолжим рассматривать данную тему, в частности, узнаем как преобразовывать многомерные структуры и как форматировать вывод JSON данных в Python. Итак приступим.
Пример преобразования многомерного словаря:
import json
x = {
"site": "MyRusakov.Ru",
"type": "SITE",
"age": 12,
"active": True,
"linked": [
{"site": "blog.myrusakov.ru", "type": "BLOG"},
{"site": "srs.myrusakov.ru", "type": "E-Commerce"}
]
}
print(json.dumps(x))
Результат
{
"site": "MyRusakov.Ru",
"age": 12,
"type": "SITE",
"linked": [
{
"site": "blog.myrusakov.ru",
"type": "BLOG"
},
{
"site": "srs.myrusakov.ru",
"type": "E-Commerce"
}
],
"active": true
}
Как видите через встроенный модуль json в Python можно удобно преобразовывать многомерные структуры данных.
Результат, который Вы видите выше предварительно отформатирован, однако при простом использовании json.dumps этого не произойдет и вы получите трудно читаемую строку без пробелов и отступов, которая удобна для компьютера, но не для человека.
Чтобы отформатировать вывод json.dumps, в функцию необходимо передать именованный параметр с указанием количества пробелов, которые будут использоваться для форматирования.
Пример:
json.dumps(x, indent=4) // 4 отступа
json.dumps(x, indent=4, separators=(". ", " = ")) // разделители объектов и свойств
Сортировка вывода:
json.dumps(x, indent=4, sort_keys=True) // сортировка значений
Формат JSON используются очень широко. Он прост и удобен для понимания, а главное универсален. Т.е. вне зависимости от того, какие языки и платформы вы используете, в них уже есть поддержка этого популярного формата. Также JSON очень часто используется при создании различных REST-сервисов, поэтому для разработчика Python важно знать как его использовать.
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.