JSON Python
- Предыдущая страница Даты Python
- Следующая страница RegEx Python
JSON - это синтаксис для хранения и обмена данными.
JSON написан текстом, представляющим объекты JavaScript (JavaScript object notation).
JSON в Python
Python имеет модуль под названием json
внутреннюю библиотеку, которая может быть использована для обработки данных JSON.
Пример
Импортировать json
Модуль:
import json
Анализ JSON - преобразование JSON в Python
Если есть строка JSON, то можно использовать json.loads()
Метод его анализирует.
Результат будет словарем Python.
Пример
Преобразование JSON в Python:
import json # Некоторые JSON: x = '{ "name":"Bill", "age":63, "city":"Seatle"}' # Анализ x: y = json.loads(x) # Результат является словарем Python: print(y["age"])
Преобразование Python в JSON
Если у вас есть объект Python, вы можете использовать json.dumps()
Метод преобразует его в строку JSON.
Пример
Преобразование Python в JSON:
import json # Объект Python (словарь): x = { "name": "Bill" "age": 63 "city": "Seatle" } # Преобразование в JSON: y = json.dumps(x) # Результат является строкой JSON: print(y)
Вы можете преобразовать следующие типы объектов Python в строку JSON:
- dict
- list
- tuple
- string
- int
- float
- True
- False
- None
Пример
Преобразование объектов Python в строку JSON и вывод значения:
import json print(json.dumps({"name": "Bill", "age": 63})) print(json.dumps(["apple", "bananas"])) print(json.dumps(("apple", "bananas"))) print(json.dumps("hello")) print(json.dumps(42)) print(json.dumps(31.76)) print(json.dumps(True)) print(json.dumps(False)) print(json.dumps(None))
При преобразовании Python в JSON объекты Python будут преобразованы в эквиваленты JSON (JavaScript):
Python | JSON |
dict | Object |
list | Array |
tuple | Array |
str | String |
int | Number |
float | Number |
True | true |
False | false |
None | null |
Пример
Преобразование объектов Python, содержащих все разрешенные типы данных:
import json x = { "name": "Bill" "age": 63 "married": True "divorced": False, "children": ("Jennifer","Rory","Phoebe"), "pets": None, "cars": [ {"model": "Porsche", "mpg": 38.2}, {"model": "BMW M5", "mpg": 26.9} } } print(json.dumps(x))
Форматирование результатов
Верхний пример печатает строку JSON, но она не очень удобна для чтения, без отступов и пробелов.
json.dumps()
Метод предоставляет параметры для улучшения читаемости результатов:
Пример
Использование indent
Параметр для определения числа отступов:
json.dumps(x, indent=4)
Вы также можете определить разделители, значение по умолчанию (", ", ": "), означает использование запятой и пробела для разделения каждого объекта, использование двоеточия и пробела для разделения ключей и значений:
Пример
Использование separators
Параметр для изменения стандартных разделителей:
json.dumps(x, indent=4, separators=(". ", " = "))
Сортировка результатов
json.dumps()
Метод предоставляет параметр для сортировки ключей в результатах:
Пример
Использование sort_keys
Параметр для указания сортировки результатов:
json.dumps(x, indent=4, sort_keys=True)
- Предыдущая страница Даты Python
- Следующая страница RegEx Python