A JSON elemzése és feldolgozása Pythonban

How Parse Process Json Python



A JSON a JavaScript egy részhalmaza, amelyet strukturált formátumú adatok továbbítására használnak a szerver és az ügyfél között. A JSON csomag Pythonba épült. Tehát a JSON adatok könnyen kódolhatók és dekódolhatók a Python szkript használatával a JSON csomag importálásával. A JSON támogatja az olyan primitív adattípusokat, mint a karakterlánc, a szám és az összetett adattípusok, például a lista, az objektumok stb. Ez az oktatóanyag bemutatja, hogyan lehet elemezni és feldolgozni a JSON -adatokat Python -szkript használatával.

Szerializálás és deserializálás

A Python objektum JSON objektummá válik a szerializáció használatával, a JSON objektum pedig Python objektummá deszerializálással. A következő táblázat azt mutatja be, hogy a Python -objektumok hogyan konvertálódnak JSON -objektumokká vagy fordítva a szerializálás és a deserializálás során.







JSON Piton
igaz igaz
hamis hamis
húr húr
szám szám
sor lista, sor
tárgy diktálni
nulla egyik sem

Mód:



load (): Ezzel a módszerrel adatokat tölthet be egy JSON fájlból egy python dict -be.
Betöltések (): Ezzel a módszerrel adatokat tölthet be egy JSON változóból egy python -diktumba.
dump (): Ezzel a módszerrel lehet adatokat feltölteni a python szótárból a JSON fájlba.
dumps (): Ezzel a módszerrel adatokat tölthet be a python szótárból a JSON változóba.



JSON adatok olvasása Python használatával

A JSON adatok különböző módon elemezhetők és feldolgozhatók a Python parancsfájl használatával. Ebben a részben különböző Python -példák segítségével bemutatjuk, hogyan elemezhetők a különböző típusú JSON -adatok. Hozzon létre egy egyszerű json fájlt diák.json a következő adatokkal az oktatóanyag szkriptjeinek teszteléséhez.





[ {'Azonosító': '1110978','Név': 'Alif al-Razi','Tétel': '3. 4','Szemeszter': '8',
'Osztály': 'CSE'},

{'Azonosító': „2220998”,'Név': 'Nusrat Faria','Tétel': '2. 3','Szemeszter': „9”,
'Osztály': 'BBA'},

{'Azonosító': '1118934','Név': 'Emran Hossain','Tétel': „33”,'Szemeszter': „7”,
'Osztály': 'CSE'},

{'Azonosító': '4448934','Név': 'Rehana Akter','Tétel': „41”,'Szemeszter': „10”,
'Osztály': 'ENG'},

{'Azonosító': '11107745','Név': 'Saif Ali','Tétel': „39”,'Szemeszter': „5”,
'Osztály': 'CSE'}]

1. példa: JSON -fájl olvasása és nyomtatása JSON formátumban

Hozzon létre egy nevű python fájlt json1.py a következő forgatókönyvvel. A JSON modul bármilyen JSON -adat olvasására szolgál python -szkript használatával. nyisd ki() módszert használják az olvasáshoz diák.json fájl és Betöltés() módszerrel tároljuk az adatokat a változóba, adat.

#Importálás JSONmodul
import json

# Nyissa meg a meglévő JSON fájltszámárabetöltése egy változóba
nyitottal('student.json')mint f:
adat=json.Betöltés(f)

# Nyomtassa ki a JSON adatokat
nyomtatás(adat)

Kimenet:



A szkript futtatása után a következő kimenet jelenik meg.

2. példa: Olvassa el és elemezze az adatokat egy JSON fájlból Python dict használatával

A JSON adatok bármely python szótárváltozóban tárolhatók, hogy az egyes tulajdonságértékeket később könnyen feldolgozzák. Hozzon létre egy nevű python -szkriptet json2.py a következő kóddal. Itt a korábban létrehozott json fájlt használják. Miután betöltötte az adatokat a szótárba, minden rekord minden tulajdonságértékét kinyomtatja a tulajdonság nevével.

#Importálás jsonmodul
import json

# Nyissa meg a meglévő json fájltszámárabetöltése egy változóba
nyitottal('student.json','r')mint f:
diákok=json.Betöltés(f)

# Nyomtassa ki az objektum minden tulajdonságát
számáradiák a diákokban:
nyomtatás(diák['Név'],',',diák['Tétel'],'tétel',',', diák['Szemeszter'],
'Szemeszter',',',diák['Osztály'],'osztály')

Kimenet:

A szkript futtatása után a következő kimenet jelenik meg.

3. példa: JSON -adatok elemzése

A JSON adatok bármely JSON változóból értelmezhetők. Hozzon létre egy nevű fájlt json3.py a következő forgatókönyvvel. JSONData itt három tulajdonság JSON -adatainak tárolására van deklarálva. terhelések () metódust itt használjuk az adatok JSON változóból való betöltésére. Ezután minden tulajdonságnév minden tulajdonságnévvel soronként nyomtat a terminálon.

#Importálás jsonmodul
import json

# Definiálja a json adatokat
JSONData= '{' Java ':' 3 kredit ',' PHP ':' 2 kredit ',' C ++ ':' 3 kredit '}'

# Töltse be a json adatokat egy változóba
adatot tárolni=json.terhelések(JSONData)

# Ismételje meg aszámárahurok az adatok kinyomtatásához
számáraval in storageata:
nyomtatás('% s:% s' % (val, tárolt adatok[óra]))

Kimenet:

A szkript futtatása után a következő kimenet jelenik meg.

4. példa: JSON adatok elemzése Python objektumba

A JSON -adatok egy python szótárváltozóban vannak tárolva az oktatóanyag előző három példájában. Ez a példa bemutatja, hogyan tárolhat JSON -adatokat bármely python -objektumban. Hozzon létre egy nevű fájlt json4.py a következő forgatókönyvvel. Itt, read_data osztály a JSON adatok tárolására szolgál egy objektumban. JSONData , egy változót használnak az osztály objektumának létrehozásakor. Három tulajdonság létezik a JSONData -ban és a tulajdonságnév értéke, PHP kimenetként nyomtat.

#Importálás JSONmodul
import json

# Definiálja a JSON adatokat
JSONData= '{' Java ':' 3 kredit ',' PHP ':' 2 kredit ',' C ++ ':' 3 kredit '}'

# Kijelentosztályhogy tárolja a JSON adatokat egy python szótárban
osztályread_data(tárgy):
def __init__(én, jdata):
saját .__ dict__=json.terhelések(jdata)

# Rendelje hozzá az objektumotosztály
p_object=read_data(JSONData)

# Nyomtassa ki az adott tulajdonság értékét
nyomtatás(p_object.PHP)

Kimenet:

A „PHP” tulajdonság értéke „2 kredit”. Tehát a következő kimenet jelenik meg a szkript futtatása után.

5. példa: A Python dict konvertálása JSON -adatokra

A JSON adatok a Python szótárban vagy objektumban vannak tárolva az előző példákban, de a python szótárból származó adatok tárolhatók egy JSON változóban is. Hozzon létre egy nevű fájlt json5.py a következő forgatókönyvvel. Az adatok a szótár változóban tárolódnak, customerDict. guba() itt a módszert használják az adatok átalakítására egy szótári változóból JSON változóvá, jsonObject . Ezután a JSON változó értéke nyomtatásra kerül.

#Importálás JSONmodul
import json

# Nyújtson be egy python szótárt
customerDict= {'név': 'János','típus': 'Arany','kor': 35 }

# Töltse be az adatokat a szótárból a JSON objektumba
jsonData=json.guba(customerDict)

# Nyomtassa ki a JSON objektumot
nyomtatás(jsonData)

Kimenet:

A szkript futtatása után a következő kimenet jelenik meg.

Következtetés:

A JSON adatformátumot számos programozási nyelv támogatja. A JSON átalakítása Python -ba és a python -ból JSON -adatokra ebben az oktatóanyagban található, különféle python -példák segítségével. Az oktatóanyag gyakorlása után bármilyen típusú adatkonverziót végrehajthat a python objektumból a JSON objektumba vagy fordítva.