Какво е Python JSON и как да го приложим?



Тази статия за Python JSON ще ви помогне да научите как да анализирате, сериализирате и десериализирате JSON с помощта на примерни програми.

Знаете ли как да транспортирате данните си от онлайн API или да съхранявате различни видове данни на вашите локални машини? По един или друг начин сте се потопили в JSON, което означава Обозначение на обект на Java Script. Това е известен и популярен формат на данни, използван за представяне на полуструктурирани данни. Нека да се запознаем подробно с Python JSON в детайли.

В тази статия ще бъдат обсъдени следните аспекти:





Въведение в JSON в Python:

JSON означава J ava С крипт ИЛИ bject н отацияе начин за съхраняване на информация по организиран и лесен начин. Данните трябва да бъдат под формата на текст, когато се обменят между браузър и сървър.

Лого на JSON - Python JSON-Edureka



В случай, че се чудите дали е така ? тогава отговорът е не. Това е скрипт, който е съставен от текст и се използва за съхраняване и прехвърляне на данни в човешки и машинно четим формат. Това е малък, лек формат за данни, вдъхновен от JavaScript и обикновено използван в текстов или низ формат. Пакет от JSON е почти идентичен с речник на python. Сигурно се чудите

Как да чета JSON файл в Python?

Отговорът на въпроса ви е, че трябва да импортирате JSON модула, който обикновено преобразува типовете данни на Python в JSON низ файла. Състои се от JSON функции, които четат и пишат директно от JSON файлове. има вграден JSON пакет и е част от стандартната библиотека, така че не е необходимо да го инсталирате.

Пример:

импортиране json

След като вече знаете JSON в Python, нека разгледаме по-задълбочено разбор.



Разбор:

Библиотеката JSON може да анализира JSON от струни или файлове. Той може също да анализира JSON в или направете списък и направете обратното. Разборът обикновено се извършва на два етапа:

  1. Преобразуване от JSON в Python
  2. Преобразуване от Python в JSON

Нека да разберем по-добре и двата етапа.

Преобразуване от JSON в Python:

Можете да конвертирате JSON низ в Python, като използватеjson.loads ().Позволете ми да ви покажа практическото изпълнение:

Пример:

import json people_string = '' '{' people ': [{' emp_name ':' John smith ',' emp_no. ':' 924367-567-23 ',' emp_email ': [' johnsmith@dummyemail.com '], 'has_license': 'false'}, {'emp_name': 'harshit kant', 'emp_number': '560-555-5153', 'emp_email': 'null', 'has_license': 'true'}]} ' '' data = json.loads (people_string) print (data)

Изход:

Както можете да видите от горния изход, той е отпечатал . Нека отпечатаме типа данни за по-добро разбиране.

Пример:

import json people_string = '' '{' people ': [{' emp_name ':' John smith ',' emp_no. ':' 924367-567-23 ',' emp_email ': [' johnsmith@dummyemail.com '], 'has_license': 'false'}, {'emp_name': 'harshit kant', 'emp_number': '560-555-5153', 'emp_email': 'null', 'has_license': 'true'}]} ' '' data = json.loads (people_string) print (type (data)) # отпечатва типа данни

Изход:



Сега, след като сте запознати с едно преобразуване, нека да видим другия тип преобразуване на втория етап.

Преобразуване от Python в JSON:

Обект на Python може да бъде преобразуван в JSON низ с помощта наjson.dumps ().Нека да разгледаме един пример, даден по-долу:

Пример:

import json people_string = '' '{' people ': [{' emp_name ':' John smith ',' emp_no. ':' 924367-567-23 ',' emp_email ': [' johnsmith@dummyemail.com '], 'has_license': 'false'}, {'emp_name': 'harshit kant', 'emp_no.': '560-555-5153', 'emp_email': 'null', 'has_license': 'true'}]} '' 'data = json.loads (people_string) new_string = json.dumps (data) print (new_string)

Изход:

Изходът ще бъде от тип JSON низ. Вече демонстрирах типа данни в JSON за преобразуване в Python, следва се същата процедура за отпечатване на типа данни.


Нека да продължим напред и да видим как Pandas анализират JSON.

Pandas анализиране JSON:

JSON низ може да бъде анализиран в панди Кадър от следните стъпки:

обърнете число в python
  • Следната родова структура може да се използва за зареждане на JSON низ в DataFrame.
импортирайте панди като pd pd.read_json (r'Path, където сте запазили JSON fileFile Name.json ')
  • Подгответе JSON низ.
  • Създайте JSON файл, който използваме, е nobel_prize.json.
  • Заредете JSON файла в pandas DataFrame.

Приложеният по-долу код зарежда моя JSON файл в DataFrame.

импортирайте панди като pd импортирайте json с open (r'C: UsersHarshit_KantDesktopnobel.prize.json ') като f: data = json.load (f) print (data) df = pd.DataFrame print (df)

Изход:

Продължавайки напред, нека видим как можете да сериализирате JSON в Python.

Сериализация на JSON [Кодиране]:

Сериализирането на JSON просто означава, че кодирате JSON. Той преобразува дадената структура от данни на Python (например: dict) в своя валиден JSON обект. За да се справи с потока от данни във файл, JSON библиотеката в Python използва изхвърляне () и сметища () метод, който прави преобразуването и улеснява записването на данни във файлове.

По-долу е дадена таблица, илюстрираща Python типове данни конвертиране в съответния им тип JSON.

Python JSON

дикт (речник)

обект

списък, масив

кортеж

низ

низ

int, long, float

числа

Вярно

вярно

Невярно

невярно

Нито един

нула

Точки за запомняне:

изхвърляне () - Преобразува данните в JSON файл
сметища () - Преобразува данните в JSON низ
зареждане () - Преобразува JSON файла в обект на Python
товари () - Преобразува обект от JSON низ в обект на Python

Хубав печат:

Pretty Printing се грижи за подравняването на кода и го прави в разбираем за човека формат. Нека да разгледаме примера по-долу, където съм предал два параметъра ‘sort_keys’, който винаги връща булева стойност True и ‘отстъп’.

Пример:

import json people_string = '' '{' people ': [{' emp_name ':' John smith ',' emp_no. ':' 924367-567-23 ',' emp_email ': [' johnsmith@dummyemail.com '], 'has_license': 'false'}, {'emp_name': 'harshit kant', 'emp_no.': '560-555-5153', 'emp_email': 'null', 'has_license': 'true'}]} '' 'data = json.loads (people_string) new_string = json.dumps (data, sort_keys = True, indent = 3) print (new_string)

Изход:

Продължавайки напред в урока по Python JSON, нека разберем десериализацията на JSON.

Десериализация на JSON [Декодиране]:

Десериализацията на JSON е точно обратното на сериализацията, т.е. това означава, че декодирате JSON. Той преобразува дадения JSON низ в Python обект чрез използване на зареждане () и товари () метод, който прави преобразуването.

По-долу е дадена таблица, която илюстрира преобразуването на типа данни JSON в съответния му тип Python.

JSON Python

обект

дикт (речник)

кортеж

списък, масив

android studio ui дизайн урок

низ

низ

числа

int, long, float

вярно

Вярно

невярно

Невярно

нула

Нито един

Продължаване в урока „Python JSON“. Ще ви покажа пример в реално време както за сериализация, така и за десериализация чрез перспектива за кодиране.

Демонстрация на кодиране:

В тази демонстрация на кодиране използвам JSON набор от данни, наречен „Нобелова награда“, който се дава тук . Ще научите как да правите сериализация и десериализация на същото чрез JSON файл.

Пример (сериализиране на JSON набор от данни):

импортирайте json с open ('nobel_prize.json.html') като f: data = json.load (f) с open ('new_nobel_prize.json.html') като f: json.dump (data, f, indent = 2)

Изход:

се компилира успешно и се създава нов файл „new_nobel_prize.json“, където данните се изхвърлят от вече съществуващ файл „nobel_prize.json“.

Пример (десериализация на JSON набор от данни):

импортирайте json с отворен ('nobel_prize.json.html') като f: data = json.load (f) за nobel_prize в данни ['награди']: печат (nobel_prize ['година'], nobel_prize ['категория'])

Изход:

Кодовият фрагмент показва промените от JSON файл към съответния му обект Python.

Това ни води до края на нашата статия „Python JSON“. Надявам се, че сте наясно с всички концепции, свързани с JSON, парсинг, сериализация и десериализация.

Уверете се, че практикувате възможно най-много и връщате опита си.

Имате въпрос към нас? Моля, споменете го в раздела за коментари на тази статия за Python JSON и ние ще се свържем с вас възможно най-скоро. За да получите задълбочени познания за Python заедно с различните му приложения, можете с нашето онлайн обучение на живо с 24/7 поддръжка и доживотен достъп.