JSON (JavaScript Object Notation) egy népszerű fájlformátum bemutatni a strukturált adatok és az adatok átvitele a szerver és az alkalmazás között könnyen. Ennek a fájlnak a felépítése hasonló néhány Python objektumhoz, például a listához, a tuple-hez és a szótárhoz. A JSON modul dump() és dumps() metódusaival bármely szótárobjektumot JSON objektummá konvertálhat. Ez a cikk bemutatja, hogyan lehet bármilyen szótár objektumot JSON objektummá konvertálni a Pythonban.
json.dumps () metódus:
ez a módszer a szótárobjektum JSON-adatokká történő átalakítására szolgál elemzés vagy olvasás céljából, és lassabb, mint a dump() metódus.
szintaxis:
ennek a módszernek számos opcionális argumentuma van. Ebben a cikkben egy kötelező és két opcionális argumentum használatát mutatjuk be. Itt az első argumentum egy kötelező argumentum, amelyet bármely szótárobjektum felvételére használnak, a második argumentum a behúzáshoz szükséges egységek számának meghatározására szolgál, a harmadik argumentum pedig a kulcsok rendezésére szolgál.
json.dump () módszer:
ez a módszer a python objektum JSON fájlba történő tárolására szolgál. Gyorsabb, mint a dumps() metódus, mert külön ír a memóriába és a fájlba.
szintaxis:
ennek a módszernek számos argumentuma van, például a dumps(). Ebben a cikkben három argumentumot használunk arra, hogy egy szótárobjektum adatait JSON-adatokká konvertáljuk, és az adatokat JSON-fájlba tároljuk. Itt az első argumentum egy szótárobjektum felvételére szolgál, amelyet JSON objektummá kell konvertálni, a második argumentum pedig annak a fájlnak a fájlkezelőjének a nevét veszi fel, ahová a JSON-adatokat írják. A harmadik argumentum a behúzási egység beállítására szolgál.
hogyan lehet ezt a két módszert használni a szótárobjektum JSON-fájlba vagy JSON-karakterláncba konvertálására, a cikk alább látható.
példa-1: A szótár konvertálása JSON – ba a dumps() használatával, behúzással
korábban említettük, hogy a dumps() metódusnak van egy kötelező paramétere, és a szótár objektumának szüksége lehet az adatok JSON karakterláncba konvertálására. A következő szkriptben a dict_data egy szótárváltozó, amely egy adott diákrekord adatait tartalmazza. Először a dumps () metódust használjuk egy argumentummal, és a dict_data értékét JSON adatokká alakítjuk. Mind a szótár, mind a JSON formátum kimenete megegyezik, ha a JSON adatokban nincs behúzás. Ezután a dumps() metódust két argumentummal, a 3-at pedig a JSON-adatok behúzási értékeként használjuk. A második JSON kimenet behúzással fog generálni.
# JSON modul importálása
JSON importálása
# szótár meghatározása
dict_data = { “student_id”: “011894”, “név”: “Matthew”, “batch”: 30, “szemeszter”:6 }
# szótáradatok nyomtatása
nyomtatás(“Dictonary Output: \n”, dict_data, “\n”)
# szótár konvertálása JSON objektumba behúzás nélkül
json_data = json.guba (dict_data)
# JSON adatok nyomtatása
nyomtatás(“JSON kimenet behúzás nélkül: \n”,json_data, “\n”)
# szótár konvertálása json objektummá behúzással
json_data = json.guba (dict_data, indent=3)
# JSON adatok nyomtatása behúzással
nyomtatás (“JSON kimenet behúzással: \n”, json_data)
kimenet:
a parancsfájl futtatása után a következő kimenet jelenik meg.
példa-2: a szótár konvertálása JSON-ba a dumps() használatával a sort_keys
a JSON-adatok kulcsai rendezhetők a sort_keys dumps () argumentumával. Ennek az argumentumnak az alapértelmezett értéke False. A következő szkriptben a szótárobjektum JSON-adatokká konvertálódik a sort_keys használata nélkül, és a sort_keys használatával jeleníti meg ennek az argumentumnak a használatát. Az első dumps () metódust az 5.behúzási értékkel használjuk, a kimenet pedig az 5. behúzással mutatja a JSON adatokat. A második dumps() metódusban a sort_keys értéke True a kulcsértékek rendezéséhez. Az utolsó JSON kimenet a kulcsértékek rendezése után jeleníti meg az adatokat.
# JSON modul importálása
JSON importálása
# szótár meghatározása
dict_data = {‘név’:’Madison’,’hónap’:’május’,’év’: 2020, ‘értékesítés’:}
# szótáradatok nyomtatása
nyomtatás(“Dictonary Output: \n”, dict_data, “\n”)
# listaadatokat tartalmazó szótár konvertálása json
json_data = json formátumba.guba (dict_data,indent = 5)
# JSON adatok nyomtatása
nyomtatás(“JSON kimenet behúzással: \n”, json_data)
# a listaadatokat tartalmazó szótár konvertálása json-ba a kulcsok rendezésével
json_data = json.guba (dict_data, indent = 5, sort_keys = True)
# rendezett json adatok nyomtatása kulcsok alapján
nyomtatás (“rendezett JSON kimenet behúzással: \n”, json_data)
kimenet:
a parancsfájl futtatása után a következő kimenet jelenik meg. Az első JSON kimenet a szótárban meghatározott kulcsértékeket, a második JSON kimenet pedig a kulcsértékeket mutatja rendezett sorrendben.
példa-3: szótár konvertálása JSON-adatokká, majd tárolása JSON-fájlba
ha a JSON-adatokat fájlba szeretné tárolni a szótárból történő konvertálás után, akkor a dump() metódust kell használnia. Ebben a példában bemutatjuk, hogyan konvertálhat egy szótárobjektumot JSON-adatokká, és hogyan tárolhatja az adatokat JSON-fájlban. Itt a dump () metódus három argumentumot használ. Az első argumentum a korábban definiált szótár objektumot veszi fel. A második argumentum a korábban definiált fájlkezelő változót veszi fel egy JSON fájl létrehozásához. A harmadik argumentum meghatározza a behúzási értéket. Az újonnan írt JSON tartalma később nyomtatásra kerül kimenetként.
# JSON modul importálása
JSON importálása
# szótár meghatározása
dict_data = { ‘c-101’: ‘PHP programozás’, ‘c-102’: ‘Bash Programozás’, ‘c-103’:
‘Python programozás’,
‘c-104’: ‘Objektumorientált programozás’}
# szótáradatok nyomtatása
nyomtatás (“Dictonary Output: \n”, dict_data,”\n”)
# állítsa be a JSON fájlnevet
jsonFile = ‘course_list.json ‘
# nyisson meg egy json fájlt a
json-adatok írásához az open(jsonFile, ‘w’) fájlkezelő1 néven:
json.dump (dict_data, fileHandler1, indent = 2)
# JSON fájl megnyitása olvasásra
fileHandler2 = megnyitás(jsonFile)
nyomtatás(“a JSON fájl tartalma: \n”, fileHandler2.olvassa el())
kimenet:
a parancsfájl futtatása után a következő kimenet jelenik meg.
következtetés:
a különböző programozási feladatok megkönnyítése érdekében a szótáradatokat JSON-adatokba kell rejteni. Ez az adatkonverzió azért fontos, mert az adatok a JSON használatával könnyen átvihetők egyik szkriptről a másikra. Remélem, ez a bemutató segít a python felhasználóknak megismerni a szótáradatok JSON-adatokká történő átalakításának módjait, és megfelelően alkalmazni őket a szkriptjükben.