Kaj je Python JSON in kako ga uporabiti?



Ta članek o Pythonu JSON vam bo pomagal pri učenju razčlenjevanja, serializacije in deserializacije JSON s pomočjo primerov programov.

Ali veste, kako prenesti podatke iz spletnih API-jev ali shraniti različne vrste podatkov v svoje lokalne računalnike? Tako ali drugače ste se potopili v JSON, kar pomeni Oznaka predmeta Java Script. To je znana in priljubljena oblika podatkov, ki se uporablja za predstavitev polstrukturiranih podatkov. Podrobneje spoznajmo več o Python JSON.

V tem članku bomo obravnavali naslednje vidike:





Uvod v JSON v Pythonu:

JSON pomeni J ava S kripta ALI bject N otacijaje način za organizirano in enostavno shranjevanje informacij. Pri izmenjavi med brskalnikom in strežnikom morajo biti podatki v obliki besedila.

Logotip JSON - Python JSON-Edureka



Če se sprašujete, ali je ? potem je odgovor št. Gre za skript, ki je sestavljen iz besedila in se uporablja za shranjevanje in prenos podatkov v človeški in strojno berljivi obliki. To je majhen, lahek format podatkov, ki ga navdihuje JavaScript in se običajno uporablja v besedilnem ali nizovnem formatu. Paket JSON je skoraj enak slovarju python. Zdaj se gotovo sprašujete

Kako prebrati datoteko JSON v Pythonu?

Odgovor na vaše vprašanje je, da morate uvoziti modul JSON, ki navadno pretvori podatkovne tipe Python v datoteko nizov JSON. Sestavljen je iz funkcij JSON, ki berejo in pišejo neposredno iz datotek JSON. ima vgrajen paket JSON in je del standardne knjižnice, zato vam ga ni treba namestiti.

Primer:

uvoz json

Zdaj, ko poznate JSON v Pythonu, si poglejmo podrobneje razčlenjevanje.



Razčlenjevanje:

Knjižnica JSON lahko razčleni JSON iz strune ali datotek. Lahko tudi razčleni JSON v ali naštejte in naredite obratno. Razčlenjevanje običajno poteka v dveh fazah:

  1. Pretvorba iz JSON v Python
  2. Pretvorba iz Pythona v JSON

Dajmo bolje razumeti obe stopnji.

Pretvorba iz JSON v Python:

Niz JSON lahko pretvorite v Python z uporabojson.loads ().Naj vam pokažem praktično izvajanje:

Primer:

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)

Izhod:

Kot lahko vidite iz zgornjega izhoda, je natisnil . Natisnimo tip podatkov za boljše razumevanje.

Primer:

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)) #prints datatype

Izhod:



Zdaj, ko poznate eno pretvorbo, si oglejmo drugo vrsto pretvorbe v drugi fazi.

Pretvorba iz Pythona v JSON:

Objekt Python je mogoče pretvoriti v niz JSON z uporabojson.dumps ().Oglejmo si spodnji primer:

Primer:

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

Izhod:

Izhod bo v obliki niza JSON. Podatkovni tip sem že demonstriral v pretvorbi JSON v Python, po istem postopku bomo upoštevali tiskanje podatkovnega tipa.


Gremo naprej in poglejmo, kako Pande razčlenjujejo JSON.

Pandas razčlenjevanje JSON:

Niz JSON je mogoče razčleniti v pande Podatkovni okvir iz naslednjih korakov:

  • Naslednjo generično strukturo lahko uporabite za nalaganje niza JSON v DataFrame.
uvozi pande kot pd pd.read_json (r'Path, kjer ste shranili datoteko JSON FileFile Name.json ')
  • Pripravite niz JSON.
  • Ustvarite datoteko JSON, ki jo uporabljamo, je nobel_prize.json.
  • Datoteko JSON naložite v pando DataFrame.

Spodaj implementirana koda naloži mojo datoteko JSON v DataFrame.

uvozi pande kot pd uvozi json z odprtim (r'C: UsersHarshit_KantDesktopnobel.prize.json ') kot f: data = json.load (f) print (data) df = pd.DataFrame print (df)

Izhod:

V nadaljevanju si oglejmo, kako lahko serizirate JSON v Pythonu.

Serializacija JSON [kodiranje]:

Serializacija JSON preprosto pomeni, da kodirate JSON. Dato strukturo podatkov Python (npr. Dict) pretvori v veljaven objekt JSON. Knjižnica JSON v Pythonu za obdelavo pretoka podatkov v datoteki uporablja datoteko dump () in odlagališča () metoda, ki pretvori in olajša zapisovanje podatkov v datoteke.

Spodaj je tabela, ki ponazarja Python podatkovni tipi pretvorbo v njihov ustrezen tip JSON.

Python JSON

dict (slovar)

predmet

seznam, matrika

tuple

vrvica

vrvica

int, long, float

kaj je konstruktor v pythonu

številke

Prav

prav

Lažno

napačno

Nobenega

nič

Pomembne točke:

dump () - Pretvori podatke v datoteko JSON
odlagališča () - Pretvori podatke v niz JSON
obremenitev () - Pretvori datoteko JSON v objekt Python
obremenitve () - Pretvori objekt niza JSON v objekt Python

Lepo tiskanje:

Pretty Printing skrbi za poravnavo kode in jo naredi v berljivi obliki. Oglejmo si spodnji primer, kjer sem podal dva parametra 'sort_keys', ki vedno vrneta logično vrednost True in 'zamik' presledkov.

Primer:

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'}]} '' 'podatki = json.loads (niz ljudi_) new_string = json.dumps (podatki, tipke_razvrščanja = True, zamik = 3) print (new_string)

Izhod:

Če nadaljujemo z vadnico Python JSON, bomo razumeli deserializacijo JSON.

Deserializacija JSON [Decode]:

Deserializacija JSON je pravo nasprotje serializacije, kar pomeni, da dekodirate JSON. Pretvori dani niz JSON v Python predmet z uporabo obremenitev () in obremenitve () metoda, ki izvede pretvorbo.

Spodaj je tabela, ki prikazuje pretvorbo podatkovnega tipa JSON v ustrezen tip Python.

JSON Python

predmet

dict (slovar)

tuple

seznam, matrika

vrvica

vrvica

številke

int, long, float

prav

Prav

napačno

Lažno

nič

Nobenega

V nadaljevanju vadnice »Python JSON«. V realnem času vam pokažem primer serializacije in deserializacije s pomočjo kodiranja.

Prikaz kodiranja:

V tej demonstraciji kodiranja uporabljam nabor podatkov JSON, imenovan 'Nobelova nagrada', ki je podan tukaj . Naučili se boste, kako narediti serializacijo in deserializacijo istega prek datoteke JSON.

Primer (serializacija nabora podatkov JSON):

uvozi json z odprtim ('nobel_prize.json.html') kot f: podatki = json.load (f) z odprtim ('new_nobel_prize.json.html') kot f: json.dump (podatki, f, zamik = 2)

Izhod:

je uspešno prevedena in ustvarjena je nova datoteka 'new_nobel_prize.json', kjer se podatki izpisujejo iz že obstoječe datoteke 'nobel_prize.json'.

Primer (Deserializacija nabora podatkov JSON):

uvozi json z odprtim ('nobel_prize.json.html') kot f: data = json.load (f) za nobel_prize v podatkih ['nagrade']: tisk (nobel_prize ['leto'], nobel_prize ['kategorija'])

Izhod:

Delček kode prikazuje spremembe iz datoteke JSON v ustrezen objekt Python.

To nas pripelje do konca našega članka »Python JSON«. Upam, da ste seznanjeni z vsemi koncepti, povezanimi z JSON, razčlenjevanjem, serializacijo in deserializacijo.

Poskrbite, da boste čim več vadili in si povrnili izkušnje.

Imate vprašanje za nas? Prosimo, omenite ga v oddelku za komentarje tega članka o Python JSON, in takoj se vam bomo oglasili. Če želite poglobljeno znanje Pythona in njegovih različnih aplikacij, lahko z našim spletnim treningom v živo s podporo 24 ur na dan in 7 dni v tednu.

razlike med hashmap in hashtable