Què és PySON JSON i com implementar-lo?



Aquest article sobre Python JSON l'ajudarà a aprendre a analitzar, serialitzar i deserialitzar JSON amb l'ajuda de programes d'exemple.

Sabeu com transportar les vostres dades des d’API en línia o emmagatzemar diferents tipus de dades a les vostres màquines locals? D’una manera o altra, us heu submergit en JSON, que significa Notació d'objectes de script Java. És un format de dades de renom i popular que s’utilitza per representar dades semiestructurades. Anem a conèixer més detalls sobre Python JSON.

En aquest article es tractaran els aspectes següents:





Introducció a JSON a Python:

JSON significa J ava S cript O bject N otacióés una forma d’emmagatzemar informació d’una manera organitzada i senzilla. Les dades han de ser en forma de text quan s’intercanvien entre un navegador i un servidor.

c vs c ++ vs java

Logotip JSON- Python JSON-Edureka



En cas que us pregunteu si és així ? llavors, la resposta és no. És un script format per text i que s’utilitza per emmagatzemar i transferir dades en un format llegible per humans i per màquina. És un format de dades petit i lleuger inspirat en JavaScript i que s’utilitza generalment en format de text o cadena. Un paquet de JSON és gairebé idèntic a un diccionari python. Ara us ho heu de preguntar

Com es pot llegir un fitxer JSON a Python?

La resposta a la vostra pregunta és que heu d’importar el mòdul JSON que generalment converteix els tipus de dades de Python al fitxer de cadena JSON. Consisteix en funcions JSON que llegeixen i escriuen directament des de fitxers JSON. té un paquet JSON integrat i forma part de la biblioteca estàndard, de manera que no cal instal·lar-lo.

Exemple:

importació json

Ara que ja esteu al corrent de JSON a Python, analitzem més a fons l’anàlisi.



Anàlisi:

La biblioteca JSON pot analitzar JSON des de cordes o fitxers. També pot analitzar JSON al fitxer o llistar i fer el viceversa. L'anàlisi generalment es realitza en dues etapes:

  1. Conversió de JSON a Python
  2. Conversió de Python a JSON

Anem a entendre millor les dues etapes.

Conversió de JSON a Python:

Podeu convertir una cadena JSON a Python utilitzantjson.loads ().Permeteu-me que us mostri la implementació pràctica:

Exemple:

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

Sortida:

Com podeu veure a la sortida anterior, ha imprès un fitxer . Imprimim el tipus de dades per a una millor comprensió.

Exemple:

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 the datatype

Sortida:



Ara, ja que esteu familiaritzat amb una conversió, vegem l’altre tipus de conversió a la segona etapa.

Conversió de Python a JSON:

Es pot convertir un objecte Python a cadena JSON mitjançantjson.dumps ().Vegem un exemple que es mostra a continuació:

Exemple:

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)

Sortida:

La sortida serà d’un tipus de cadena JSON. Ja he demostrat el tipus de dades en la conversió de JSON a Python; es seguirà el mateix procediment per imprimir el tipus de dades.


Avancem i veurem com els pandes analitzen JSON.

Anàlisi de pandes JSON:

La cadena JSON es pot analitzar en un fitxer pandes Dataframe dels passos següents:

  • La següent estructura genèrica es pot utilitzar per carregar la cadena JSON al DataFrame.
importar pandes com pd pd.read_json (r'Path on heu desat el fitxer JSON Nom del fitxer.json ')
  • Prepareu la cadena JSON.
  • Creeu un fitxer JSON que estem utilitzant és nobel_prize.json.
  • Carregueu el fitxer JSON al pandas DataFrame.

El codi implementat a continuació carrega el meu fitxer JSON al DataFrame.

importar pandes com pd importar json amb obert (r'C: UsersHarshit_KantDesktopnobel.prize.json ') com a f: data = json.load (f) print (data) df = pd.DataFrame print (df)

Sortida:

Seguint endavant, vegem com podeu serialitzar JSON a Python.

Serialització de JSON [Codificar]:

Serialitzar JSON significa simplement que esteu codificant JSON. Converteix l'estructura de dades Python donada (ex: dict) en el seu objecte JSON vàlid. Per gestionar el flux de dades en un fitxer, la biblioteca JSON de Python utilitza un fitxer abocar () i abocadors () , que fa la conversió i facilita l’escriptura de dades en fitxers.

A continuació es mostra una taula que il·lustra el fitxer Python tipus de dades convertint-se al seu tipus JSON respectiu.

Python JSON

dict (diccionari)

objecte

llista, matriu

tupla

corda

corda

int, llarg, flotador

números

És cert

cert

Fals

fals

Cap

nul

Punts que cal recordar:

abocar () - Converteix les dades en un fitxer JSON
abocadors () - Converteix les dades en una cadena JSON
load () - Converteix el fitxer JSON en un objecte Python
càrregues() - Converteix un objecte de cadena JSON en un objecte Python

Impressió bonica:

Pretty Printing s’encarrega de l’alineació del codi i el fa en un format llegible per l’home. Vegem l'exemple següent en què he passat dos paràmetres 'sort_keys' que sempre retorna un valor booleà True i els espais 'sagnat'.

Exemple:

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)

Sortida:

Avançant al tutorial JSON de Python, entenem la deserialització de JSON.

Deserialització de JSON [Decodifica]:

La deserialització de JSON és exactament el contrari de la serialització, és a dir, significa que esteu descodificant JSON. Converteix la cadena JSON donada en un fitxer Python objecte fent ús de load () i càrregues() mètode que fa la conversió.

A continuació es mostra una taula que il·lustra la conversió del tipus de dades JSON al seu respectiu tipus Python.

JSON Python

objecte

dict (diccionari)

tupla

llista, matriu

corda

corda

números

int, llarg, flotador

cert

És cert

fals

Fals

nul

fusionar el codi font d'ordenació c ++

Cap

Avançant al tutorial 'Python JSON'. Us mostraré un exemple en temps real tant de serialització com de deserialització mitjançant la perspectiva de codificació.

Demostració de codificació:

En aquesta demostració de codificació, estic fent ús d'un conjunt de dades JSON anomenat 'Premi Nobel' que es dóna aquí . Aprendràs a fer la serialització i la deserialització del mateix mitjançant un fitxer JSON.

Exemple (serialització del conjunt de dades JSON):

importar json amb open ('nobel_prize.json.html') com a f: data = json.load (f) amb open ('new_nobel_prize.json.html') com a f: json.dump (dades, f, sagnat = 2)

Sortida:

es compila amb èxit i es crea un nou fitxer “new_nobel_prize.json” on s’estan abocant les dades d’un fitxer ja existent “nobel_prize.json”.

Exemple (deserialització del conjunt de dades JSON):

importar json amb obert ('nobel_prize.json.html') com a f: data = json.load (f) per a nobel_prize a les dades ['premis']: imprimir (nobel_prize ['any'], nobel_prize ['categoria'])

Sortida:

El fragment de codi mostra els canvis d'un fitxer JSON al seu respectiu objecte Python.

Això ens porta al final del nostre article 'Python JSON'. Espero que tingueu clar tots els conceptes relacionats amb JSON, anàlisi, serialització i deserialització.

Assegureu-vos de practicar el màxim possible i de recuperar la vostra experiència.

Tens alguna pregunta? Si us plau, mencioneu-lo a la secció de comentaris d’aquest article de Python JSON i us respondrem el més aviat possible. Per obtenir un coneixement en profunditat de Python juntament amb les seves diverses aplicacions, podeu fer-ho amb la nostra formació en línia en directe amb assistència les 24 hores del dia, els 7 dies de la setmana i accés durant tota la vida.