Kaj je JSON?
Med orodji, jeziki in tehnikami, ki so običajno povezane s Python, JSON ali JavaScript Object Notation, je oblika datoteke, ki jo Python lahko bere, piše in razčlenjuje. JSON se pogosto uporablja za izmenjavo podatkov v spletu. Natančneje, JSON je najprimernejša oblika besedila pri pošiljanju informacij s spletnega strežnika v brskalnik ali obratno. To je ugodno že zaradi njegove učinkovitosti. JSON je mogoče neposredno pretvoriti v predmete JavaScript in jih tako razlagati, predmete JavaScript pa lahko neposredno pretvoriti v besedilo JSON. Dodatno grozljivo in neorganizirano razčlenjevanje ni potrebno. Ko gre za izmenjavo podatkov v spletu, je JSON način, ki ga je treba uporabiti.
Python - branje, pisanje in razčlenitev JSON
Ker je JSON neodvisen od jezika, je mogoče objekte Python pretvoriti tudi v JSON. Če Python prejme podatke v formatu JSON, jih lahko brez težav pretvori v predmete Python. JSON je lahek. Za uporabo Pythonovega branja JSON-a, pisanja JSON-a in razčlenjevanja funkcije JSON morate v Python uvoziti samo JSON. JSON je vgrajen modul v Pythonu in potrebujete samo tip uvoz json na začetku vašega Pythona s kodo JSON, da začnete.
Zakaj bi nekdo uporabljal JSON s Pythonom? No, če delate na spletnem projektu, ki je povezan z branjem podatkov, boste verjetno naleteli na Python-ov izhod iz situacije. Python je jezik, ki ga je mogoče uporabljati za toliko različnih namenov, njegova vse večja funkcionalnost pa pomeni, da ga boste neizogibno srečali na svojem programskem potovanju. Podpora, ki jo Python daje različni dinamiki programiranja, pomeni, da je za to delo z JSON v tem jeziku.
Osnovne funkcije modula JSON v Pythonu
Oblika:
Če ste v preteklosti že uporabljali Python v precejšnji količini, potem morate poznati podatkovno strukturo, imenovano slovar. Pravzaprav je zelo verjetno, da so vam slovarji bili najboljši prijatelji pri delu v Pythonu. Zaradi njihove enostavne razlage je njihova oblika najbolj smiselna podatkovna struktura za delo s predmeti po meri, ki zahtevajo atribute različnih vrst. In verjemite nam, ko to rečemo, da se slovarji v Pythonu noro pogosto uporabljajo!
Če želite na primer uporabiti predmet Item, lahko ustvarite slovar, kot je:
Zdaj, ko ste videli, kako izgleda slovar v kodi Python in ko je natisnjen, sem prepričan, da je njegova oblika zdaj bolj smiselna kot takrat, ko bi prvič naleteli na te podatke, ki so zaviti v zavite oklepaje.
Tu začnejo stvari postajati nekoliko bolj ustrezne. Privezati se! Ker bomo razkrili največje presečišče med Pythonom in JSON-om. Ne pozabite na obliko slovarja v Pythonu? Ta majhen delček kode z zgoraj prikazanimi oklepaji? Zdaj si oglejte spodnjo sliko:
Nekaj opazite? Kako ne? Popolnoma enako je! Slovarji Python in besedilo JSON so v bistvu v isti obliki. Iz tega lahko verjetno ugotovite, kaj bomo ugotavljali, ko bo članek napredoval - da je epsko preprosto "odložiti" slovarje Pythona v datoteke JSON. Slovarji niso edini predmeti Python, ki jih je mogoče pretvoriti v besedilo JSON. Seznami, nabori, logične vrednosti, nizi, inti in seznam se nadaljuje so vsi zamenljivi z JSON. Ena stvar, ki pa je na zgornjih slikah morda niste opazili, so narekovaji. JSON uporablja dvojne narekovaje samo, za razliko od Pythona. Morda se boste želeli spomniti te podrobnosti, da se rešite pred epizodo »Kje je tokrat prekleta napaka??!".
Postopek:
Najprej morate uvoziti Pythonov vgrajeni modul za JSON.
Najprej začnemo z ustvarjanjem JSON iz slovarja Python. Zapisovanje JSON uporablja metodo json.odlagališča (). Ta metoda vrne niz JSON. Spodnji posnetek zaslona prikazuje slovar, pretvorjen v JSON, in njegove rezultate, prikazane v Jupyter Notebook.
Zdaj zapišimo ta slovar Python, pretvorjen v JSON, v datoteko JSON. Delček kode spodaj prikazuje, da je bilo to storjeno z uporabo json.dump (). S tem bo ustvarjena besedilna datoteka (datoteka s pripono txt), v katero bo zapisan niz JSON.
Takole izgleda nastala datoteka:
Pretvorba slovarjev v JSON ustvari predmete JSON. Kaj pa druge vrste podatkov v Pythonu? Kaj se zgodi z njimi, ko jih pretvorite v besedilo JSON? To vprašanje nima enega samega odgovora. Na primer, seznami in nabori se pretvorijo v JavaScript enakovredno polje. Ints in floats se pretvorijo v Number. Str se pretvori v niz. Oh, in skoraj smo pozabili omeniti! Vse te vrste podatkov je mogoče pretvoriti v JSON z uporabo dveh metod json.dump () in json.odlagališča ().
Zdaj, ko ste seznanjeni z osnovno funkcionalnostjo metode odlagališč, lahko varno preberete, kako bolje uporabiti njene parametre. Ima parameter za urejanje podatkov, imenovan sort_keys. Ločilo lahko nastavite, namesto da uporabite privzeto s parametrom ločila. Določi se lahko tudi zamik.
Torej, tukaj je! Tako enostavno je delati z datotekami JSON v Pythonu! Za začetek si pomagajte s tem vodnikom in Pythonovo dokumentacijo.