Python

Kuidas teisendada sõnastik Pythonis JSON-iks

Kuidas teisendada sõnastik Pythonis JSON-iks
JSON (JavaScripti objektimärge) on populaarne failivorming struktureeritud andmete esitamiseks ning andmete hõlpsaks edastamiseks serveri ja rakenduse vahel. Selle faili struktuur sarnaneb mõne Pythoni objektiga nagu loend, dupleks ja sõnastik. Saate teisendada mis tahes sõnastiku objekti JSON objekti abil prügila () ja prügimäed () meetodid Json moodul. See artikkel näitab võimalusi mis tahes sõnastikuobjekti teisendamiseks pythonis JSON-objektiks.

json.prügimäe () meetod:

Seda meetodit kasutatakse sõnaraamatu objekti teisendamiseks JSON-andmeteks sõelumiseks või lugemiseks ja see on aeglasem kui prügila () meetod.

Süntaks:

json.prügimäed (objekt, taane = puudub, sort_keys = Vale)

Sellel meetodil on palju valikulisi argumente. Selles artiklis on näidatud ühe kohustusliku ja kahe valikulise argumendi kasutamine. Esimene argument on kohustuslik argument, mida kasutatakse mis tahes sõnastikuobjekti võtmiseks, teist argumenti kasutatakse taandeühikute arvu määratlemiseks ja kolmandat klahvide sortimiseks.

json.dump () meetod:

Seda meetodit kasutatakse pythoni objekti salvestamiseks JSON-faili. See on kiirem kui prügimäed () meetod, sest see kirjutab mällu ja faili eraldi.

Süntaks:

json.dump (dicionary, fileHandler, taane = puudub)

Sellel meetodil on palju argumente prügimäed (). Selles artiklis kasutatakse sõnastikuobjekti andmete teisendamiseks JSON-i andmeteks ja andmete salvestamiseks JSON-failiks kolme argumenti kasutamist. Siin kasutatakse esimest argumenti sõnastikuobjekti võtmiseks, mis tuleb teisendada JSON-objektiks, ja teist argumenti kasutatakse selle faili failikäsitleja nime jaoks, kuhu JSON-i andmed kirjutatakse. Kolmandat argumenti kasutatakse taandeühiku määramiseks.

Kuidas neid kahte meetodit saab kasutada sõnastikuobjekti teisendamiseks JSON-failiks või JSON-stringiks, on näidatud selle artikli allpool.

Näide 1: teisendage sõnastik JSON-i kasutades prügimäed () taandega

Enne mainiti, et meetodil dumps () on üks kohustuslik parameeter ja andmete teisendamiseks JSON-stringiks võib kuluda sõnastikuobjekt. Järgmises skriptis, dict_data on sõnastiku muutuja, mis sisaldab konkreetse õpilaskirje andmeid. Esiteks, prügimäed () meetodit kasutatakse ühe argumendi ja väärtusega dict_data teisendatakse JSON-andmeteks. Nii sõnastiku kui ka JSON-vormingu väljund on sama, kui JSON-i andmetes ei kasutata ühtegi taandet. Järgmine, prügimäed () meetodit kasutatakse kahe argumendiga ja 3 kasutatakse JSON-i andmete taandeväärtusena. Teine JSON-väljund genereeritakse taandega.

#!/ usr / bin / env python3
# Import jsoni moodul
import json
# Määratlege sõnastik
dict_data = "student_id": "011894", "name": "Matthew", "batch": 30, "semester": 6
# Sõnastiku andmete printimine
print ("Diktonaarne väljund: \ n", dict_data, "\ n")
# Teisenda sõnastik json-objektiks ilma taandeta
json_data = json.prügimäed (dict_data)
# printige Jsoni andmed
print ("JSONi väljund taandeta: \ n", json_data, "\ n")
# Teisenda sõnastik taandega jsoni objektiks
json_data = json.prügimäed (dict_data, taane = 3)
# printige taandega jsoni andmed
print ("JSONi väljund taandega: \ n", json_data)

Väljund:

Pärast skripti käivitamist ilmub järgmine väljund.

Näide-2: teisendage sõnastik JSON-i, kasutades sort_keys-ga dumps ()

JSON-andmete võtmeid saab sortida kasutades sort_keys puistangute argument (). Selle argumendi vaikeväärtus on False. Järgmises skriptis teisendatakse sõnaraamatu objekt JSON-andmeteks ilma seda kasutamata sort_keys ja kasutades sort_keys selle argumendi kasutamise kuvamiseks. Esimest meetodit dumps () kasutatakse taande 5 väärtusega ja väljund näitab JSONi andmeid taande 5 abil. Teises meetodis dumps () kasutatakse võtmeväärtuste sortimiseks sort_keys ja seatakse väärtusele True. Viimane JSON-i väljund näitab andmeid pärast võtmeväärtuste sorteerimist.

#!/ usr / bin / env python3
# Import jsoni moodul
import json
# Määratlege sõnastik
dict_data = 'nimi': 'Madison', 'kuu': 'mai', 'aasta': 2020, 'müük': [1000, 2100, 3500, 1200]
# Sõnastiku andmete printimine
print ("Diktonaarne väljund: \ n", dict_data, "\ n")
# Teisenda loendiandmetega sõnastik jsoniks
json_data = json.prügimäed (dict_data, taane = 5)
# printige Jsoni andmed
print ("JSONi väljund taandega: \ n", json_data)
# Teisendage loendiandmetega sõnastik jsoniks klahvide sorteerimise teel
json_data = json.prügimäed (dict_data, taane = 5, sort_keys = True)
# printige klahvide põhjal sorteeritud jsoni andmed
print ("Sorteeritud JSON-väljund taandega: \ n", json_data)

Väljund:

Pärast skripti käivitamist ilmub järgmine väljund. Esimene JSON-väljund näitab põhiväärtusi sõnastikus määratletud kujul ja teine ​​JSON-i väljund näitab võtmeväärtusi järjestatud järjekorras.

3. näide: teisendage sõnastik JSON-andmeteks ja salvestage JSON-failiks

Kui soovite JSON-i andmed pärast sõnastikust teisendamist faili salvestada, peate seda kasutama prügila () meetod. Selles näites on näidatud, kuidas saab sõnastikuobjekti teisendada JSON-andmeteks ja salvestada andmeid JSON-faili. Siin, prügila () meetod kasutab kolme argumenti. Esimene argument võtab sõnastikuobjekti, mis on eelnevalt määratletud. Teine argument võtab JSON-faili loomiseks failikäitleja muutuja, mis on samuti eelnevalt määratletud. Kolmas argument määratleb taande väärtuse. Äsja kirjutatud JSON-i sisu trükitakse hiljem väljundina.

#!/ usr / bin / env python3
# Import jsoni moodul
import json
# Määratlege sõnastik
dict_data = 'c-101': 'PHP programmeerimine', 'c-102': 'Bashi programmeerimine', 'c-103':
'Pythoni programmeerimine',
'c-104': 'Objektorienteeritud programmeerimine'
# Sõnastiku andmete printimine
print ("Diktonaarne väljund: \ n", dict_data, "\ n")
# Määra jsoni failinimi
jsonFile = 'kursuse_loend.json '
# Avage jsoni fail json-andmete kirjutamiseks
avatud failiga (jsonFile, 'w') failina Handler1:
json.dump (dict_data, fileHandler1, taane = 2)
# Avage Json-fail lugemiseks
fileHandler2 = avatud (jsonFile)
print ("JSON-faili sisu: \ n", fileHandler2.loe ()

Väljund:

Pärast skripti käivitamist ilmub järgmine väljund.

Järeldus:

Erinevate programmeerimisülesannete hõlbustamiseks on vaja varjatud sõnastikuandmeid JSON-andmeteks. See andmete teisendamine on oluline, kuna andmeid saab JSON-i abil hõlpsasti ühest skriptist teise skripti üle kanda. Loodan, et see õpetus aitab pythoni kasutajatel teada võimalusi sõnaraamatu andmete JSON-andmeteks teisendamiseks ja nende skripti õigeks rakendamiseks.

Kuidas kasutada Xdotooli hiireklõpsude ja klahvivajutuste stimuleerimiseks Linuxis
Xdotool on tasuta ja avatud lähtekoodiga käsurea tööriist hiireklõpsude ja klahvivajutuste simuleerimiseks. See artikkel hõlmab lühikest juhendit xdot...
Viis parimat ergonoomilist arvutihiiretoodet Linuxile
Kas pikaajaline arvuti kasutamine põhjustab valu randmes või sõrmedes?? Kas teil on liigeste jäikus ja peate pidevalt käsi suruma? Kas tunnete põletav...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...