Привет! Добро пожаловать в это руководство по JSON для начинающих. В этой статье я расскажу, что такое JSON (/’dʒeɪsən/) и как мы можем использовать его в Python и JavaScript. Большинство API используют формат данных, который также работает при обмене данными. Самая популярная база данных No-SQL База данных MongoDB использует двоичную форму структуры JSON или BSON для управления данными.

Что такое JSON:

JSON расшифровывается как JavaScript Object Notation, это облегченный формат обмена данными, с помощью которого вы можете обмениваться данными. Это понятный человеку формат, который означает, что для чтения и понимания данных не требуется никаких других инструментов или программного обеспечения, вы можете открыть файл xyz.json и прочитать и понять, какие данные находятся внутри этого файла. С другой стороны, некоторые форматы данных нуждаются в инструменте/программном обеспечении для понимания данных, как мы это делаем в файлах изображений. JSON поддерживает массив, объект, строку, число и логическое значение.

Зачем использовать JSON

  • вы можете легко читать и писать в JSON, синтаксис довольно прост и идеально подходит для хранения и обмена данными между системами.
  • Это облегченный формат, что означает, что он может быть быстро передан по сети и легко обработан веб-браузером.
  • он не зависит от языка, его можно использовать на различных языках программирования, что делает его простым и идеальным выбором.
  • JSON можно легко проанализировать и преобразовать в нативные структуры данных на большинстве языков программирования.

Пример строки JSON:

{
  "name":"Mr. Smith",
  "age":30,
  "Cars":1
}

это простая структура JSON с 3 объектами свойств.

  • имя
  • возраст
  • легковые автомобили

если вы знакомы со словарем Python, JSON выглядит очень похоже на это, JSON и словарь Python, обе структуры данных позволяют использовать данные в формате key:value . JSON использует ограниченный набор типов данных, но словарь Python может хранить широкий спектр данных, включая целые числа, словари с плавающей запятой, логические значения, строки, кортежи, списки и другие словари.

Преобразование из JSON в Python

давайте начнем работать с JSON вам не нужно устанавливать какую-либо библиотеку, модуль JSON является частью стандартной библиотеки Python. просто напишите "import json” и начните с ним работать.

импортируйте модуль JSON:

import json

Наша первая задача — преобразовать формат JSON в формат, читаемый Python, для этого мы используем функцию json.loads(). Функция json.load() считывает данные JSON из объекта и преобразует их в объект Python (словарь, список, строка), который можно легко использовать в коде Python.

вот пример преобразования строки JSON в объект python.

import json

x =  '{ "Product id":101, "Product name":"cadbury", "price":"15$"}'

#load json
y = json.loads(x)

#print product name
print(y["Product name"])

Вывод приведенного выше кода:

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

вот другой пример, где мы используем example.json file для преобразования его в объект Python, example.json содержит данные футбольных команд.

import json

# Open a JSON file and read its contents
with open('example.json') as f:
    data = json.load(f)

# Print the data
print(data)

вывод приведенного выше кода

если вы заметили, что есть две функции: одна — load(), а другая — load(), обе они используются по-разному.

  • json.load() используется для загрузки данных JSON из файлового объекта. Данные JSON считываются из файлового объекта и преобразуются в объект Python.
  • json.loads() используется для загрузки данных из строки в формате JSON. Данные JSON передаются в виде строкового аргумента и преобразуются в объект Python.

я объяснил и привел пример для обоих выше

Преобразование из Python в JSON

У вас есть другой вариант: вы можете преобразовать объекты Python в файлы JSON, чтобы преобразовать Python в JSON, у нас есть такая опция, как dump()/dumps(). Ниже приведено объяснение обеих функций с примером.

  1. Метод json.dump() используется для записи объектов Python в файл в формате JSON. Объект Python преобразуется в данные JSON и записывается в файл. Вот Пример.
import json

# Python dictionary
python_dict = {'name': 'John', 'age': 30, 'city': 'New York'}

# Write dictionary to JSON file
with open('data.json', 'w') as f:
    json.dump(python_dict, f)

после выполнения кода вы получите новый файл с именем data.json

вот моя папка до выполнения кода

затем я запускаю import json.py и получаю новый файл json с именем data.json, это то же имя, которое мы вводим в нашем коде. Вот пример запуска import json.py с использованием терминала.

здесь я только что переехал в свое место, где находится мой import json.py, а затем выполнил его с помощью python.

после выполнения файла мы получаем новый файл с именем data.json. Ниже приведен снимок, показывающий два файла в папке.

2.json.dumps(): метод используется для преобразования объектов Python в строку JSON. Объект Python преобразуется в строку JSON и возвращается. Вот пример:

Вывод:

Модуль json в Python — это мощный инструмент для работы с данными JSON. Это позволяет разработчикам легко преобразовывать объекты Python в формат JSON и наоборот. Модуль предлагает несколько методов, в том числе load, loads, dump и dumps, которые обеспечивают различные способы обработки данных JSON. С помощью модуля json разработчики могут считывать данные JSON из файлов, записывать данные JSON в файлы, анализировать данные JSON из строк и генерировать данные JSON из объектов Python. Кроме того, модуль json поддерживает пользовательские кодировщики и декодеры, которые можно использовать для обработки сложных объектов Python, которые нельзя напрямую преобразовать в формат JSON. В целом, модуль json является ключевым инструментом для работы с данными JSON в Python и может использоваться в различных приложениях, от веб-разработки до анализа данных.

Надеюсь, вам понравилась статья. Она была информативной, пожалуйста, хлопайте в ладоши и продолжайте рассказывать мне, какие улучшения мне следует внести. спасибо, ПРИЯТНОГО ОБУЧЕНИЯ