Kuinka JSON jäsennetään Pythonissa. Ensin ladataan JSON-tiedosto json.load () -menetelmällä. Tuloksena on Python-sanakirja. Sitten voimme käyttää kenttiä sanakirjamenetelmillä.
JSON on kevyt tiedonsiirtomuoto.
Jos haluat poimia tietoja JSON-tiedostosta tai JSON-vastauksesta, meidän on jäsennettävä tiedot.
Käytämme esimerkissämme seuraavaa JSON: a:
{ '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 }
Ensimmäinen vaihe on ladata JSON-tiedosto Pythoniin:
import json with open('store.json') as json_file:
data = json.load(json_file) print(data)
JSON-tiedosto on nyt tallennettu data
-kansioon muuttuja.
Tulostustapa tulostaa vain yllä olevan JSON: n.
merkintä:Yllä oleva menetelmä tallentaa JSON: n a python-sanakirja . Voimme tarkistaa tämän tulostamalla tyyppi, tulosta (tyyppi (tiedot)).Nyt kun meillä on JSON Python-sanakirjana, voimme noutaa tiettyjä tietoja määrittämällä kentän, joka edustaa key
sanakirjassa.
Esimerkiksi polkupyörän hinnan hakemiseksi yllä olevasta JSON: sta käytämme:
print(data['store']['bicycle']['price'])
Tuotos:
19.95
Yllä olevassa JSON-esimerkissä 'kirja' -kenttä on JSON-taulukko.
Voimme käyttää hakemistomerkintää tiettyjen kohteiden hakemiseen.
Esimerkiksi saadaksemme toisen kirjan nimen saisimme:
print(data['store']['book'][1]['title'])
Tuotos:
Sword of Honour
Oletetaan, että halusimme saada kaikki kirjat, joiden hinta on pienempi tai yhtä suuri kuin 10,00.
Sitten käytämme:
books = data['store']['book'] for book in books:
if book['price'] <= 10.00:
print(book)
Tuotos:
{'category': 'reference', 'author': 'Nigel Rees', 'title': 'Sayings of the Century', 'price': 8.95}
Tässä viestissä tarkasteltiin, miten JSON jäsennetään Pythonissa. Tärkein takeaway on, että kun JSON-tiedosto on ladattu, se tallennetaan Python-sanakirjana. Kun meillä on sanakirja, voimme sitten käyttää tavallisia sanakirjamenetelmiä poimimaan tiettyjä arvoja JSON: sta.