logo

Llegiu el fitxer JSON amb Python

La forma completa de JSON és JavaScript Object Notation. Significa que s'utilitza un fitxer d'script (executable) que està format per text en un llenguatge de programació per emmagatzemar i transferir les dades. Python admet JSON mitjançant un paquet integrat anomenat JSON. Per utilitzar aquesta funció, importem el paquet JSON a Python guió. El text en JSON es fa mitjançant una cadena entre cometes que conté el valor de la assignació clau-valor dins de { }.

Python Parse JSON: Com llegir un fitxer JSON

És bastant fàcil carregar un objecte JSON a Python. Python té un paquet integrat anomenat JSON , que es pot utilitzar per treballar amb dades JSON. Es fa mitjançant el mòdul JSON, que ens proporciona molts mètodes entre ells Mètodes loads() i load(). ens ajudaran a llegir el fitxer JSON.

Deserialitzar una cadena JSON a un objecte en Python

La deserialització de JSON significa la conversió d'objectes JSON en els seus respectius objectes Python. S'utilitza el mètode load()/loads(). Si heu utilitzat dades JSON d'un altre programa o l'heu obtingut com a format de cadena de JSON, es pot deserialitzar fàcilment amb load()/loads(), que normalment s'utilitza per carregar des de la cadena, en cas contrari, l'objecte arrel es troba a llista o dictat. Vegeu la taula següent que es mostra a continuació.



OBJECTE JSON

OBJECTE PYTHON

objecte

dictat

convertir nombre enter en cadena java

matriu

llista

corda

str

nul

Cap

nombre (int)

int

nombre (real)

flotar

veritat

És cert

fals

Fals

mètode json.load().

El json.load() accepta l'objecte del fitxer, analitza les dades JSON, omple un diccionari de Python amb les dades i us les retorna.

Sintaxi:

json.load (objecte fitxer)

Paràmetre: Pren l'objecte fitxer com a paràmetre.

Tornada: Torna un objecte JSON.

Carregant un fitxer JSON a Python

Aquí llegirem un fitxer JSON anomenat data.json la captura de pantalla del fitxer es mostra a continuació.

python-json

En el codi següent, primer importem el mòdul JSON, obrim el fitxer mitjançant la gestió de fitxers funció open(). , i després emmagatzemar les dades a la variable 'dades' utilitzant la funció json.load(). Després d'això, repetim les dades i les imprimim.

Python 3




# Python program to read> # json file> import> json> # Opening JSON file> f>=> open>(>'data.json'>)> # returns JSON object as> # a dictionary> data>=> json.load(f)> # Iterating through the json> # list> for> i>in> data[>'emp_details'>]:> >print>(i)> # Closing file> f.close()>

>

>

Sortida:

python-read-json-output

json.loads() Mètode

Si tenim una cadena JSON, podem analitzar-la utilitzant el mètode json.loads(). . json.loads() no pren la ruta del fitxer, sinó el contingut del fitxer com una cadena, per llegir el contingut d'un fitxer JSON podem utilitzar fileobject.read() per convertir el fitxer en una cadena i passar-lo amb json.loads (). Aquest mètode retorna el contingut del fitxer.

Sintaxi:

json.loads(S)

Paràmetre: pren una cadena, bytes o instància de matriu de bytes que conté el document JSON com a paràmetre (S).

Tipus de retorn: Retorna l'objecte Python.

Python: llegiu la cadena JSON

Aquest exemple mostra la lectura tant de la cadena com del fitxer JSON mitjançant el mètode json.loads(). En primer lloc, tenim una cadena JSON emmagatzemada en una variable 'J_string' i convertiu aquesta cadena JSON en un diccionari de Python mitjançant el mètode json.loads() que s'emmagatzema a la variable ‘y’ després ho imprimim. En segon lloc, llegim la cadena JSON emmagatzemada en un fitxer amb json.loads() perquè primer convertim el fitxer JSON en una cadena utilitzant el maneig de fitxers igual que a l'exemple anterior i després el convertim a la cadena mitjançant la funció read() i La resta del procediment és el mateix que seguim abans d'utilitzar el mètode json.loads().

Python 3




# Python program to read> # json file> import> json> # JSON string> j_string>=> '{'name': 'Bob', 'languages': 'English'}'> # deserializes into dict and returns dict.> y>=> json.loads(j_string)> print>(>'JSON string = '>, y)> print>()> # JSON file> f>=> open> (>'data.json'>,>'r'>)> # Reading from file> data>=> json.loads(f.read())> # Iterating through the json list> for> i>in> data[>'emp_details'>]:> >print>(i)> # Closing file> f.close()>

afegir cadena java

>

>

Explicació: Aquí a la sortida podem veure tant la sortida de la cadena de lectura com el fitxer mitjançant el mètode json.loads().

Sortida:

python-read-json-output