№23 Модуль JSON / Уроки по Python для начинающих
JSON является синтаксисом для хранения и обмена данными. JSON — это текст, написанный в стиле объекта JavaScript.
JSON в Python
Python имеет встроенный модуль json , который может использоваться для работы с данными JSON.
Конвертация из JSON в Python
Если у вас есть строка JSON, вы можете провести над ней парсинг с помощью метода json.loads () .
Как результат, будет словарь python.
Конвертируем из JSON в Python:
Конвертировать из Python в JSON
Если у вас есть объект Python, вы можете преобразовать его в строку JSON с помощью метода json.dumps() .
Вы можете преобразовать следующие типов объекты Python в строки JSON:
- dict
- list
- tuple
- string
- int
- float
- True
- False
- None
Конвертируем объекты Python в строки JSON и выведите значения:
Когда вы конвертируете из Python в JSON, объекты Python преобразуются в эквивалент JSON:
| Python | JSON |
|---|---|
| dict | Object |
| list | Array |
| tuple | Array |
| str | String |
| int | Number |
| float | Number |
| True | true |
| False | false |
| None | null |
Конвертируйте объект Python, содержащий все типы конвертируемых данных:
Как конвертировать кириллицу
Если в данных Python есть символы кириллицы, метод json.dumps() преобразует их с кодировкой по умолчанию. Что бы сохранить кириллицу используйте параметр ensure_ascii=False
Форматирование результата
В приведенном выше примере выводится строка JSON, но читать ее не так просто, без отступов и переносов строк.
У метода json.dumps() есть параметры, облегчающие чтение результата.
Используем параметр indent для определения количества отступов:
Вы также можете определить разделители, значение которых по умолчанию — , , : , где запятая и пробел используются для разделения каждого объекта, а двоеточие и пробел — для разделения ключей и значений.
Используем параметр separators чтобы изменить разделитель по умолчанию:
Как преобразовать строку в JSON в Python
Чтобы преобразовать строку в json в Python, вы можете использовать функцию json.loads(). Эта функция принимает допустимую строку JSON и возвращает словарь, который можно использовать для доступа ко всем элементам.
Пример преобразования строки в JSON
В этом примере мы сначала преобразуем строку json в объект словаря Python с помощью метода json.loads(), а затем преобразуем словарь в строку с помощью метода json.dumps().
Зачем нужно конвертировать строку в формат json?
Преобразование строки в объект JSON в Python позволяет легко изменять данные, хранящиеся в строке.
JSON (нотация объектов JavaScript) — это популярный формат данных, используемый для структурированного хранения данных. Преобразовав строку в объект JSON, вы можете получить доступ и изменить данные в объекте, а также использовать объект в любых процессах или функциях, связанных с JSON.
Encoding and Decoding JSON with Python — A Cheatsheet
![]()
Conversion of json string (or json file) to python and vice versa is often a confusing endeavor. This article can serve as a cheatsheet.
In this short post, I provide a highlight of the conversion functions from json to python and vice versa. The functions are:
- json.loads(jsonString) — json string to python object
- json.dumps(pythonObject) — python object to json string
- json.load(fileHandler) — json file to python object — python object from file
- json.dump(jsonString or pythonObject, fileHandler) — json string or python object to json file
When you want to access json elements using their keys, you need to convert a json string or a json file into a python dictionary with json.loads(json string) or json.dumps(file handler), respectively. Note the s in loads — which perhaps stands for string, thus loads == loadString.
Similarly, when you want to convert a python dictionary to a json string, e.g., for string processing, or want to save it as a json file, you use json.load(python_dict) or json.dump(json string or python object, file handler), respectively. The following code snippets demonstrates these functions. But first of all, you need to import the required library, i.e., json.
- json.loads()
the above code produces:
2. json.dumps()
the above code snippet produces:
3. json.dump()
4. json.load()
The above code snippet produces
I hope this article give a summary of the four functions that are often used for encoding and decoding json data. Drop me a question or feedback, if you have one, in the comment section.
Преобразование строки в JSON в Python
Прежде чем углубиться в тему преобразования строки в JSON в Python, давайте поговорим о том, что такое строки и что такое JSON.
Строки: это последовательность символов, которые обозначаются кавычками ». Они неизменяемы, что означает, что они не могут быть изменены после объявления.
JSON: означает «JavaScript Object Notation», файлы JSON состоят из текста, который может быть легко прочитан людьми и представлен в виде пар атрибут-значение.
Расширение файлов JSON — «.json».
Давайте посмотрим на первый подход к преобразованию строки в json в Python.
Использование json.dumps()
- Поскольку здесь цель состоит в том, чтобы преобразовать строку в файл json, мы сначала импортируем модуль json.
- Следующим шагом является инициализация json-объекта, в котором у нас есть имя субъекта в качестве ключей, а затем указываются их соответствующие значения.
- После этого мы использовали dumps() для преобразования объекта Python в строку json.
- Наконец, мы будем использовать load() для анализа строки JSON и преобразования ее в словарь.
Использование eval()
Давайте разберемся, что мы сделали в указанной выше программе.
- Сначала мы импортируем модуль json.
- Следующим шагом является инициализация json-объекта, в котором у нас есть имя субъекта в качестве ключей, а затем указываются их соответствующие значения.
- После этого мы использовали eval() для преобразования строки Python в json.
- При выполнении программы отображается желаемый результат.
Получение значений
Наконец, в последней программе мы получим значения после преобразования строки в json.
Давайте посмотрим на это.
На выходе мы можем наблюдать следующие вещи:
- Мы преобразовали строку в json с помощью json.loads().
- После этого мы использовали ключи «C_code» и «Java_code», чтобы получить их соответствующие значения.
Вывод
В этом руководстве мы узнали, как преобразовать строку в json с помощью Python.