Piton

Hogyan lehet konvertálni a szótárt JSON-ba a pythonban

Hogyan lehet konvertálni a szótárt JSON-ba a pythonban
JSON (JavaScript Object Notation) egy népszerű fájlformátum, amely a strukturált adatokat mutatja be, és az adatokat könnyen átadja a szerver és az alkalmazás között. A fájl felépítése hasonló néhány Python-objektumhoz, például a listához, a duplához és a szótárhoz. Bármely szótár objektumot konvertálhat a JSON objektum használatával lerak() és guba() módszerei a json modul. Ez a cikk bemutatja a szótár objektumok JSON objektummá alakításának módját a pythonban.

json.dumps () módszer:

Ezt a módszert használják a szótár objektum átalakítására JSON adatokká elemzés vagy olvasás céljából, és ez lassabb, mint lerak() módszer.

Szintaxis:

json.kiírások (objektum, behúzás = Nincs, sort_keys = Hamis)

Ennek a módszernek számos opcionális argumentuma van. Egy kötelező és két választható argumentum használatát mutatja be ez a cikk. Itt az első argumentum egy kötelező argumentum, amelyet bármilyen szótár objektum felvételére használunk, a második argumentum a behúzáshoz szükséges egységek számának meghatározására, a harmadik argumentum pedig a kulcsok rendezésére szolgál.

json.dump () módszer:

Ezt a módszert a python objektum JSON fájlba történő tárolására használják. Gyorsabb, mint a guba() metódust, mert külön írja a memóriába és a fájlba.

Szintaxis:

json.dump (dicionary, fileHandler, indent = Nincs)

Ennek a módszernek számos érve van, például guba(). A cikk három argumentum használatával konvertálja a szótárobjektum adatait JSON-adatokká, és az adatokat JSON-fájlba tárolja. Itt az első argumentum egy olyan szótárobjektum felvételére szolgál, amelyet át kell alakítani JSON-objektummá, a második argumentumot annak a fájlnak a fájlkezelőjének nevére kell használni, ahová a JSON-adatokat írják. A harmadik argumentum a behúzási egység beállítására szolgál.

Ez a két módszer bemutatja, hogyan lehet ezt a két módszert átalakítani a szótárobjektum JSON fájlokká vagy JSON karakterláncokká.

1. példa: A szótár konvertálása JSON-vá a guba() behúzással

Korábban említettük, hogy a dumps () metódusnak egyetlen kötelező paramétere van, és a szótárobjektumba kerül az adatok JSON karakterláncokká alakítása. A következő szkriptben, dict_data egy szótár változó, amely egy adott hallgatói rekord adatait tartalmazza. Először, a szemétlerakók () metódust egy argumentummal és a dict_data JSON adatokká konvertálódik. Mind a szótár, mind a JSON formátum kimenete megegyezik, ha a JSON-adatokban nem használnak behúzást. Következő, a szemétlerakók () metódust két argumentummal, a 3-at pedig behúzási értékként használják a JSON-adatokhoz. A második JSON kimenet behúzással generálódik.

#!/ usr / bin / env python3
# Json modul importálása
import json
# Definiáljon szótárt
dict_data = "student_id": "011894", "name": "Matthew", "batch": 30, "félév": 6
# Szótáradatok nyomtatása
nyomtatás ("Dictonary Output: \ n", dict_data, "\ n")
# Szótár konvertálása json objektummá behúzás nélkül
json_data = json.dumps (dict_data)
# nyomtassa ki a json adatait
nyomtatás ("JSON kimenet behúzás nélkül: \ n", json_data, "\ n")
# Konvertálja a szótárt json objektummá behúzással
json_data = json.kiírások (dict_data, behúzás = 3)
# nyomtassa ki a json adatait behúzással
nyomtatás ("JSON kimenet behúzással: \ n", json_data)

Kimenet:

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

2. példa: Konvertáljon szótárat JSON-ba a sort_keys dumps () használatával

A JSON-adatok kulcsait a segítségével rendezheti sort_keys argumentum a szemétlerakókról (). Az argumentum alapértelmezett értéke Hamis. A következő szkriptben a szótárobjektum felhasználás nélkül JSON-adatokká konvertálódik sort_keys és használ sort_keys hogy megjelenítse ennek az érvnek a használatát. Az első dumps () módszert az 5-ös behúzási értékkel alkalmazzák, és a kimenet JSON-adatokat mutat be az 5-ös behúzással. A második dumps () módszerben a sort_keys értéket használjuk, és True értékre állítjuk a kulcsértékek rendezéséhez. Az utolsó JSON kimenet a kulcsértékek rendezése után mutatja az adatokat.

#!/ usr / bin / env python3
# Json modul importálása
import json
# Definiáljon szótárt
dict_data = 'név': 'Madison', 'Hónap': 'Május', 'év': 2020, 'értékesítés': [1000, 2100, 3500, 1200]
# Szótáradatok nyomtatása
nyomtatás ("Dictonary Output: \ n", dict_data, "\ n")
# Konvertáljon egy listával rendelkező szótárat json-ba
json_data = json.kiírások (dict_data, behúzás = 5)
# nyomtassa ki a json adatait
nyomtatás ("JSON kimenet behúzással: \ n", json_data)
# Konvertáljon egy listát tartalmazó szótárat json-ba a kulcsok rendezésével
json_data = json.dumpok (dict_data, behúzás = 5, sort_keys = True)
# válogatott Json-adatok nyomtatása kulcsok alapján
print ("Rendezett JSON kimenet behúzással: \ n", json_data)

Kimenet:

A következő kimenet jelenik meg a szkript futtatása után. Az első JSON kimenet a kulcsértékeket mutatja a szótárban meghatározottak szerint, a második JSON kimenet pedig a kulcsértékeket rendezett sorrendben mutatja.

3. példa: A szótár konvertálása JSON-adatokká és tárolás JSON-fájlba

Ha a JSON adatait egy fájlba kívánja tárolni a szótárból történő konvertálás után, akkor használnia kell a lerakó () módszer. Ebben a példában látható, hogyan lehet konvertálni egy szótárobjektumot JSON-adatokká és tárolni az adatokat JSON-fájlban. Itt a lerak() módszer 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 kezelt fájlkezelő változót veszi át egy JSON fájl létrehozásához. A harmadik érv a behúzási értéket határozza meg. Az újonnan megírt JSON tartalmát később kinyomtatják.

#!/ usr / bin / env python3
# Json modul importálása
import json
# Definiáljon szótárt
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 = 'tanfolyam_lista.json '
# Nyisson meg egy json fájlt a json adatok írásához
a open (jsonFile, 'w') fileHandler1 fájlként:
json.dump (dict_data, fileHandler1, behúzás = 2)
# Nyisson meg egy json fájlt olvasásra
fileHandler2 = nyitott (jsonFile)
print ("A JSON fájl tartalma: \ n", fileHandler2.olvas())

Kimenet:

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

Következtetés:

A különféle programozási feladatok megkönnyítése érdekében rejtett szótáradatokat kell JSON-adatokká tenni. Ez az adatkonverzió azért fontos, mert az adatok a JSON használatával könnyen átkerülhetnek egyik szkriptből a másikba. Remélem, hogy ez az oktatóanyag segít a python felhasználóknak megismerni a szótáradatok JSON-adatokká alakításának módjait, és megfelelően alkalmazza őket a szkriptjükben.

Hogyan lehet rögzíteni és streamelni a játékmenetét Linuxon
Korábban a játékokat csak hobbinak tekintették, de az idő múlásával a játékipar hatalmas növekedést ért el a technológia és a játékosok száma szempont...
A legjobb játékok kézi követéssel
Az Oculus Quest nemrégiben bemutatta a vezérlés nélküli kézi követés nagyszerű ötletét. Az egyre növekvő számú játékkal és tevékenységgel, amelyek tám...
Az OSD-fedvény megjelenítése teljes képernyős Linux-alkalmazásokban és játékokban
Teljes képernyős játékok lejátszása vagy alkalmazások figyelemelterelés nélküli, teljes képernyős módban történő használata elvághatja a panelen vagy ...