Kas ir Python JSON un kā to ieviest?



Šis raksts par Python JSON palīdzēs jums uzzināt, kā parsēt, serializēt un deserializēt JSON, izmantojot piemēru programmas.

Vai zināt, kā transportēt datus no tiešsaistes API vai uzglabāt dažāda veida datus vietējās mašīnās? Vienā vai otrā veidā jūs esat iegremdējies JSON, kas apzīmē Java skripta objekta apzīmējums. Tas ir slavens un populārs datu formāts, ko izmanto daļēji strukturētu datu attēlošanai. Iepazīsimies sīkāk par Python JSON.

Šajā rakstā tiks aplūkoti šādi aspekti:





Ievads JSON Python:

JSON apzīmē ava S scenārijs VAI objekts N otācijair veids, kā organizēti un viegli uzglabāt informāciju. Datu apmaiņai starp pārlūku un serveri jābūt teksta formā.

JSON logo- Python JSON-Edureka



Gadījumā, ja rodas jautājums, vai tā ir ? tad atbilde ir Nē. Tas ir skripts, kas sastāv no teksta un tiek izmantots datu glabāšanai un pārsūtīšanai cilvēka un mašīnlasāmā formātā. Tas ir mazs, viegls datu formāts, kas iedvesmots no JavaScript un parasti tiek izmantots teksta vai virknes formātā. Paciņa JSON ir gandrīz identisks pitona vārdnīcai. Tagad jums noteikti jābrīnās

java saņem datumu no virknes

Kā lasīt JSON failu Python?

Atbilde uz jūsu jautājumu ir tāda, ka jums jāimportē JSON modulis, kas parasti pārveido Python datu tipus par JSON virknes failu. Tas sastāv no JSON funkcijām, kas lasa un raksta tieši no JSON failiem. ir iebūvēta JSON pakete un tā ir daļa no standarta bibliotēkas, tāpēc jums tā nav jāinstalē.

Piemērs:

importa json

Tagad, kad esat informēts par JSON Python, apskatīsim dziļāk parsēšanu.



Parsēšana:

JSON bibliotēka var parsēt JSON no stīgas vai faili. Tas var arī parsēt JSON vai uzskaitiet un dariet otrādi. Parsēšana parasti notiek divos posmos:

  1. Pārveidošana no JSON uz Python
  2. Pārveidošana no Python uz JSON

Labāk sapratīsim abus posmus.

Pārveidošana no JSON uz Python:

Varat pārveidot JSON virkni par Python, izmantojotjson.loads ().Ļaujiet man parādīt praktisko ieviešanu:

Piemērs:

importēt json people_string = '' {'cilvēki': [{'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'}]}} »dati = json.loads (people_string) druka (dati)

Izeja:

Kā redzams no iepriekš minētās izejas, tas ir iespiests a . Labākai izpratnei izdrukāsim datu tipu.

Piemērs:

importēt json people_string = '' {'cilvēki': [{'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'}]}} 'dati = json.loads (people_string) druka (tips (dati)) # izdrukā datu tipu

Izeja:



Tagad, kad esat iepazinies ar vienu reklāmguvumu, otrajā posmā redzēsim citu reklāmguvumu veidu.

Pārveidošana no Python uz JSON:

Python objektu var pārveidot par JSON virkni, izmantojotjson.dumps ().Apskatīsim tālāk sniegto piemēru:

Piemērs:

importēt json people_string = '' {'cilvēki': [{'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'}]]} dati = json.loads (cilvēku_stringa) new_string = json.dumps (dati) print (new_string)

Izeja:

Izeja būs JSON virknes tipa. Esmu jau parādījis datu tipu pārveidojumā JSON uz Python, datu veida drukāšanā tiks ievērota tā pati procedūra.


Pārejam uz priekšu un redzēsim, kā Pandas parsē JSON.

Pandas parsējot JSON:

JSON virkni var parsēt par a pandas Dataframe no šīm darbībām:

  • Lai ielādētu JSON virkni DataFrame, var izmantot šo vispārīgo struktūru.
importēt pandas kā pd pd.read_json (r'Path, kur saglabājāt JSON failuFile Name.json ')
  • Sagatavojiet JSON virkni.
  • Izveidojiet JSON failu, kuru mēs izmantojam, ir nobel_prize.json.
  • Ielādējiet JSON failu pandas DataFrame.

Zemāk ieviestais kods ielādē manu JSON failu DataFrame.

importēt pandas kā pd importēt json ar atvērtu (r'C: UsersHarshit_KantDesktopnobel.prize.json ') kā f: data = json.load (f) print (data) df = pd.DataFrame print (df)

Izeja:

Ejot uz priekšu, ļaujiet mums uzzināt, kā jūs varat serializēt JSON Python.

JSON [kodēšana] serializācija:

JSON serializēšana vienkārši nozīmē, ka jūs kodējat JSON. Tas pārveido norādīto Python datu struktūru (ex: dict) par derīgu JSON objektu. Lai apstrādātu datu plūsmu failā, JSON bibliotēka Python izmanto a izgāzt () un izgāztuves () metodi, kas veic konvertēšanu un atvieglo datu ierakstīšanu failos.

Zemāk sniegta tabula, kas ilustrē Python datu tipi tiek pārveidoti par atbilstošo JSON tipu.

Python JSON

dikti (vārdnīca)

objekts

saraksts, masīvs

dubultā

virkne

virkne

int, garš, pludiņš

numuri

Patiesi

taisnība

Nepatiesa

nepatiesa

Nav

nulle

Jāatceras:

izgāzt () - Pārvērš datus par JSON failu
izgāztuves () - Pārvērš datus par JSON virkni
slodze () - Pārvērš JSON failu par Python objektu
slodzes () - Pārvērš JSON virknes objektu par Python objektu

Diezgan druka:

Pretty Printing rūpējas par koda izlīdzināšanu un padara to cilvēkiem lasāmā formātā. Apskatīsim zemāk redzamo piemēru, kur esmu nodevis divus parametrus ‘sort_keys’, kas vienmēr atgriež Būla patieso vērtību un atstarpes.

Piemērs:

importēt json people_string = '' {'cilvēki': [{'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'}]]} dati = json.loads (cilvēku_stringa) new_string = json.dumps (dati, sort_keys = True, ievilkums = 3) print (new_string)

Izeja:

Virzoties uz priekšu Python JSON apmācībā, ļaujiet mums saprast JSON deserializāciju.

JSON [dekodēšana] deserializācija:

JSON deserializācija ir tieši pretēja serializācijai, t.i., tas nozīmē, ka jūs dekodējat JSON. Tas pārveido norādīto JSON virkni par a Python objekts izmantojot slodze () un slodzes () metodi, kas veic pārveidošanu.

Zemāk ir tabula, kas ilustrē JSON datu veida pārveidošanu par atbilstošo Python tipu.

JSON Python

objekts

dikti (vārdnīca)

dubultā

saraksts, masīvs

virkne

fibonacci iteratīvā c ++

virkne

numuri

int, garš, pludiņš

taisnība

Patiesi

nepatiesa

Nepatiesa

nulle

Nav

Pāriet uz priekšu “Python JSON” apmācībā. Es jums parādīšu gan sērijveida, gan deserializācijas reāllaika piemēru, izmantojot kodēšanas perspektīvu.

Kodēšanas demonstrācija:

Šajā kodēšanas demonstrācijā es izmantoju piešķirto JSON datu kopu ar nosaukumu “Nobela prēmija” šeit . Jūs uzzināsiet, kā to izdarīt, izmantojot JSON failu, to pašu serializēt un deserializēt.

Piemērs (JSON datu kopas serializācija):

importēt json ar open ('nobel_prize.json.html') kā f: data = json.load (f) ar open ('new_nobel_prize.json.html') kā f: json.dump (dati, f, ievilkums = 2)

Izeja:

tiek veiksmīgi sastādīts un tiek izveidots jauns fails “new_nobel_prize.json”, kur dati tiek izmesti no jau esoša faila “nobel_prize.json”.

Piemērs (JSON datu kopas deserializācija):

importēt json ar open ('nobel_prize.json.html') kā f: data = json.load (f) nobel_prize in data ['balvas']: print (nobel_prize ['gads'], nobel_prize ['kategorija'])

Izeja:

Koda fragments parāda izmaiņas no JSON faila uz attiecīgo Python objektu.

Tas mūs noved pie mūsu raksta “Python JSON” beigām. Es ceru, ka jums ir skaidrs visi jēdzieni, kas saistīti ar JSON, parsēšanu, serializāciju un deserializāciju.

Pārliecinieties, ka pēc iespējas vairāk praktizējat, un atgriezieties savā pieredzē.

Vai mums ir jautājums? Lūdzu, pieminējiet to šī Python JSON raksta komentāru sadaļā, un mēs pēc iespējas ātrāk sazināsimies ar jums. Lai iegūtu padziļinātas zināšanas par Python kopā ar tā dažādajām lietojumprogrammām, varat ar mūsu tiešsaistes tiešsaistes apmācību ar diennakts atbalstu un piekļuvi mūža garumā.