Što je Python JSON i kako ga implementirati?



Ovaj članak o Pythonu JSON pomoći će vam u učenju kako raščlaniti, serializirati i deserializirati JSON uz pomoć primjera programa.

Znate li kako prenijeti podatke s mrežnih API-ja ili pohraniti različite vrste podataka na svoje lokalne strojeve? Na ovaj ili onaj način uronili ste u JSON koji stoji Oznaka objekta Java Script. To je poznati i popularni format podataka koji se koristi za predstavljanje polustrukturiranih podataka. Detaljno upoznajmo više o Python JSON-u.

U ovom će se članku raspravljati o sljedećim aspektima:





Uvod u JSON u Pythonu:

JSON je kratica J ava S kript ILI bjekt N otacijaje način za pohranu podataka na organiziran i lagan način. Podaci moraju biti u obliku teksta prilikom razmjene između preglednika i poslužitelja.

JSON logotip - Python JSON-Edureka



U slučaju da se pitate je li ? onda je odgovor Ne. To je skripta koja se sastoji od teksta i koristi se za pohranu i prijenos podataka u ljudskom i strojno čitljivom formatu. To je mali, lagani format podataka nadahnut JavaScriptom i općenito se koristi u obliku teksta ili niza. Paket od JSON je gotovo identičan rječniku pythona. Sad se sigurno pitate

Kako čitati JSON datoteku u Pythonu?

Odgovor na vaše pitanje je, morate uvesti JSON modul koji obično pretvara Python tipove podataka u datoteku niza JSON. Sastoji se od JSON funkcija koje čitaju i pišu izravno iz JSON datoteka. ima ugrađeni JSON paket i dio je standardne knjižnice, pa ga ne morate instalirati.

Primjer:

uvoz json

Sad kad ste svjesni JSON-a u Pythonu, pogledajmo dublje raščlanjivanje.



Raščlanjivanje:

JSON knjižnica može raščlaniti JSON iz žice ili datoteke. Također može raščlaniti JSON na ili navesti i napraviti obrnuto. Raščlanjivanje se obično događa u dvije faze:

  1. Pretvorba iz JSON-a u Python
  2. Pretvorba iz Pythona u JSON

Idemo bolje razumjeti obje faze.

Pretvorba iz JSON-a u Python:

Možete pretvoriti JSON niz u Python pomoćujson.loads ().Dopustite mi da vam pokažem praktičnu primjenu:

Primjer:

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 (podaci)

Izlaz:

Kao što možete vidjeti iz gornjeg rezultata, ispisao je . Ispišimo tip podataka radi boljeg razumijevanja.

Primjer:

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)) #ispisuje tip podataka

Izlaz:



Sada, kad ste upoznati s jednom pretvorbom, pogledajmo drugu vrstu pretvorbe u drugoj fazi.

Pretvorba iz Pythona u JSON:

Python objekt može se pretvoriti u JSON niz pomoćujson.dumps ().Pogledajmo primjer naveden u nastavku:

Primjer:

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'}]}} '' 'podaci = json.loads (niz_ ljudi) new_string = json.dumps (podaci) ispis (new_string)

Izlaz:

Izlaz će biti tipa JSON niza. Već sam demonstrirao tip podataka u pretvorbi JSON u Python, slijedi se isti postupak slijedit će se i za ispis tipa podataka.

što je pretjerano u strojnom učenju


Krenimo dalje i vidjet ćemo kako Pande raščlanjuju JSON.

Raščlanjivanje pandi JSON:

JSON niz može se raščlaniti na pande Okvir podataka iz sljedećih koraka:

  • Sljedeća generička struktura može se koristiti za učitavanje JSON niza u DataFrame.
uvezi pande kao pd pd.read_json (r'Path gdje ste spremili datoteku JSON FileFile Name.json ')
  • Pripremite JSON niz.
  • Stvorite JSON datoteku koju koristimo je nobel_prize.json.
  • Učitajte JSON datoteku u pandas DataFrame.

Dolje implementirani kôd učitava moju JSON datoteku u DataFrame.

uvezi pande kao pd uvozi json sa open (r'C: UsersHarshit_KantDesktopnobel.prize.json ') kao f: data = json.load (f) print (data) df = pd.DataFrame print (df)

Izlaz:

Krenimo dalje, da vidimo kako možete serializirati JSON u Pythonu.

Serijalizacija JSON-a [kodiranje]:

Serijalizacija JSON-a jednostavno znači da kodirate JSON. Pretvara zadanu strukturu podataka Python (npr: dict) u svoj valjani JSON objekt. Za rukovanje protokom podataka u datoteci, JSON knjižnica u Pythonu koristi istovariti() i odlagališta () metoda koja vrši pretvorbu i olakšava upisivanje podataka u datoteke.

Dolje je dana tablica koja ilustrira Piton tipovi podataka pretvaranje u njihov odgovarajući JSON tip.

Piton JSON

dikt (rječnik)

objekt

popis, niz

korijen

niz

niz

int, long, float

brojevi

Pravi

pravi

Lažno

lažno

Nijedna

nula

Bodovi koje treba zapamtiti:

istovariti() - Pretvara podatke u JSON datoteku
odlagališta () - Pretvara podatke u JSON niz
opterećenje() - Pretvara JSON datoteku u Python objekt
opterećenja () - Pretvara objekt JSON niza u Python objekt

Lijepi ispis:

Pretty Printing brine se o poravnanju koda i čini ga u čitljivom formatu. Pogledajmo donji primjer u kojem sam proslijedio dva parametra 'sort_keys' koji uvijek vraćaju logičke vrijednosti True i 'indent' razmake.

Primjer:

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'}]}} '' 'podaci = json.loads (ljudi_niz) new_string = json.dumps (podaci, tipke_razvrstavanja = True, uvlaka = 3) ispis (new_string)

Izlaz:

Krećući se dalje u vodiču za Python JSON, shvatimo deserijalizaciju JSON-a.

Deserijalizacija JSON-a [Dekodiranje]:

Deserijalizacija JSON-a je sušta suprotnost serializaciji, tj. To znači da dekodirate JSON. Pretvara zadani JSON niz u Piton objekt korištenjem opterećenje() i opterećenja () metoda koja vrši pretvorbu.

Dolje je dana tablica koja ilustrira pretvorbu JSON tipa podataka u odgovarajući Python tip.

JSON Piton

objekt

dikt (rječnik)

korijen

popis, niz

niz

niz

brojevi

int, long, float

pravi

Pravi

lažno

Lažno

java addactionlistener (ovo)

nula

Nijedna

Kretanje prema naprijed u vodiču 'Python JSON'. Pokazat ću vam primjer serializacije i deserializacije u stvarnom vremenu kroz perspektivu kodiranja.

Demonstracija kodiranja:

U ovoj demonstraciji kodiranja koristim JSON skup podataka nazvan „Nobelova nagrada“ koji je dodijeljen ovdje . Naučit ćete kako izvršiti serializaciju i deserializaciju istih putem JSON datoteke.

Primjer (serializacija JSON skupa podataka):

uvezi json s open ('nobel_prize.json.html') kao f: data = json.load (f) s open ('new_nobel_prize.json.html') kao f: json.dump (data, f, indent = 2)

Izlaz:

uspješno se kompilira i stvara se nova datoteka 'new_nobel_prize.json' gdje se podaci izbacuju iz već postojeće datoteke 'nobel_prize.json'.

Primjer (Deserijalizacija JSON skupa podataka):

uvezi json s otvorenim ('nobel_prize.json.html') kao f: data = json.load (f) za nobel_prize u podacima ['nagrade']: ispis (nobel_prize ['godina'], nobel_prize ['kategorija'])

Izlaz:

Isječak koda prikazuje promjene iz JSON datoteke u pripadajući Python objekt.

Ovo nas dovodi do kraja našeg članka 'Python JSON'. Nadam se da su vam jasni svi koncepti povezani s JSON-om, raščlanjivanjem, serializacijom i deserijalizacijom.

Obavezno vježbajte što je više moguće i vratite svoje iskustvo.

Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare ovog članka o Python JSON-u, a javićemo vam se što je prije moguće. Da biste stekli detaljno znanje o Pythonu, zajedno s raznim aplikacijama, to možete uz naš internetski trening uživo s podrškom 24/7 i doživotnim pristupom.