Come analizzare JSON in Python

Come analizziamo JSON in Python. Per prima cosa carichiamo un file JSON utilizzando il metodo json.load (). Il risultato è un dizionario Python. Possiamo quindi accedere ai campi utilizzando i metodi del dizionario.

JSON è un formato di scambio di dati leggero.

Per estrarre le informazioni da un file JSON o da una risposta JSON, dobbiamo analizzare i dati.




Analizza JSON in Python

Useremo il seguente JSON nel nostro esempio:

{ 'store':{
'book':[

{

'category':'reference',

'author':'Nigel Rees',

'title':'Sayings of the Century',

'price':8.95

},

{

'category':'fiction',

'author':'Evelyn Waugh',

'title':'Sword of Honour',

'price':12.99

}
],
'bicycle':{

'color':'red',

'price':19.95
} }, 'expensive':10 }

Il primo passo è caricare il file JSON in Python:


import json with open('store.json') as json_file:
data = json.load(json_file) print(data)

Il file JSON è ora archiviato in data variabile.

Il metodo di stampa stamperà solo il JSON sopra.

Nota:Il metodo sopra memorizzerà il JSON come file dizionario python . Possiamo verificarlo stampando il tipo, print (type (data)).

Tutorial JSON: scopri come utilizzare JSON con JavaScript



Estrai dati particolari da JSON

Ora che abbiamo il nostro JSON come dizionario Python, possiamo recuperare alcuni dati specificando il campo, che rappresenta key nel dizionario.

Ad esempio, per recuperare il prezzo della bicicletta nel JSON sopra, useremmo:


print(data['store']['bicycle']['price'])

Produzione:

19.95

Estrai i dati dall'array JSON

Nell'esempio JSON precedente, il campo 'book' è un array JSON.

Possiamo usare la notazione dell'indice per recuperare elementi particolari.

Ad esempio, per ottenere il nome del secondo libro useremmo:


print(data['store']['book'][1]['title'])

Produzione:

Sword of Honour

Analisi condizionale di JSON

Supponiamo di voler ottenere tutti i libri che hanno un prezzo inferiore o uguale a 10.00.

Quindi useremmo:

books = data['store']['book'] for book in books:
if book['price'] <= 10.00:
print(book)

Produzione:


{'category': 'reference', 'author': 'Nigel Rees', 'title': 'Sayings of the Century', 'price': 8.95}

Conclusione

In questo post abbiamo visto come analizzare JSON in Python. Il punto chiave qui è che una volta caricato il file JSON, viene archiviato come dizionario Python. Una volta ottenuto il dizionario, possiamo quindi utilizzare i normali metodi del dizionario per estrarre valori specifici da JSON.