Python

Kā pārveidot vārdnīcu par JSON Python

Kā pārveidot vārdnīcu par JSON Python
JSON (JavaScript Object Notation) ir populārs faila formāts, lai strukturētus datus parādītu un datus viegli pārsūtītu starp serveri un lietojumprogrammu. Šī faila struktūra ir līdzīga dažiem Python objektiem, piemēram, saraksts, kopa un vārdnīca. Jebkuru vārdnīcas objektu var pārveidot par JSON objektu, izmantojot izgāzt () un izgāztuves () metodes Džonss modulis. Šajā rakstā ir parādīti veidi, kā jebkuru vārdnīcas objektu pārveidot par JSON objektu pitonā.

json.izgāztuves () metode:

Šo metodi izmanto, lai vārdnīcas objektu pārveidotu par JSON datiem parsēšanai vai lasīšanai, un tas ir lēnāks nekā izgāzt () metodi.

Sintakse:

json.izgāztuves (objekts, ievilkums = nav, sort_keys = False)

Šai metodei ir daudz izvēles argumentu. Šajā rakstā ir parādīti viena obligāta un divu izvēles argumentu lietojumi. Pirmais arguments ir obligāts arguments, kas tiek izmantots jebkura vārdnīcas objekta uzņemšanai, otrais arguments tiek izmantots, lai definētu vienību skaitu atkāpei, bet trešais - lai kārtotu atslēgas.

json.dump () metode:

Šo metodi izmanto python objekta glabāšanai JSON failā. Tas ir ātrāks par izgāztuves () metodi, jo tā tiek ierakstīta atmiņā un failā atsevišķi.

Sintakse:

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

Šai metodei ir daudz argumentu, piemēram, izgāztuves (). Šajā rakstā tiek izmantoti trīs argumenti, lai vārdnīcas objekta datus pārveidotu par JSON datiem un datus saglabātu JSON failā. Pirmais arguments tiek izmantots, lai ņemtu vārdnīcas objektu, kas jāpārvērš par JSON objektu, un otrais arguments tiek izmantots, lai ņemtu tā faila apstrādātāja nosaukumu, kurā tiks rakstīti JSON dati. Trešais arguments tiek izmantots, lai iestatītu atkāpes vienību.

Kā šīs divas metodes var izmantot vārdnīcas objekta konvertēšanai JSON failā vai JSON virknē, parādīts zemāk šajā rakstā.

1. piemērs: konvertējiet vārdnīcu JSON, izmantojot izgāztuves () ar atkāpi

Iepriekš tika minēts, ka dumps () metodei ir viens obligāts parametrs, un datu konvertēšanai JSON virknē var būt nepieciešams vārdnīcas objekts. Šajā rakstā, dict_data ir vārdnīcas mainīgais, kas satur konkrēta studenta ieraksta datus. Vispirms, izgāztuves () metodi izmanto ar vienu argumentu un vērtību dict_data tiek pārveidots par JSON datiem. Gan vārdnīcas, gan JSON formāta izvade ir vienāda, ja JSON datos netiek izmantots ievilkums. Nākamais, izgāztuves () metode tiek izmantota ar diviem argumentiem, un 3 tiek izmantota kā ievilkuma vērtība JSON datiem. Otro JSON izvadi ģenerēs ar atkāpi.

#!/ usr / bin / env python3
# Importēt Json moduli
importa json
# Definējiet vārdnīcu
dict_data = "student_id": "011894", "name": "Matthew", "batch": 30, "semester": 6
# Drukāt vārdnīcas datus
drukāt ("Dictonary Output: \ n", dict_data, "\ n")
# Konvertēt vārdnīcu json objektā bez atkāpēm
json_data = json.izgāztuves (dict_data)
# drukāt Json datus
drukāt ("JSON izvade bez ievilkumiem: \ n", json_data, "\ n")
# Konvertēt vārdnīcu json objektā ar atkāpi
json_data = json.izgāztuves (dict_data, atkāpe = 3)
# drukāt Json datus ar atkāpi
drukāt ("JSON izvade ar ievilkumu: \ n", json_data)

Izeja:

Pēc skripta palaišanas parādīsies šāda izeja.

2. piemērs: konvertējiet vārdnīcu JSON, izmantojot dumps () ar sort_keys

JSON datu atslēgas var sakārtot, izmantojot sort_keys izgāztuves arguments (). Šī argumenta noklusējuma vērtība ir False. Šajā skriptā vārdnīcas objekts tiek pārveidots par JSON datiem, neizmantojot sort_keys un izmantojot sort_keys lai parādītu šī argumenta izmantošanu. Pirmā izgāztuves () metode tiek izmantota ar 5. ievilkuma vērtību un Izeja parāda JSON datus, izmantojot 5. ievilkumu. Otrajā izgāšanas () metodē galveno vērtību kārtošanai tiek izmantoti sort_keys un iestatīti uz True. Pēdējā JSON izvade parādīs datus pēc galveno vērtību kārtošanas.

#!/ usr / bin / env python3
# Importēt Json moduli
importa json
# Definējiet vārdnīcu
dict_data = 'name': 'Madison', 'Month': 'May', 'gads': 2020, 'sales': [1000, 2100, 3500, 1200]
# Drukāt vārdnīcas datus
drukāt ("Dictonary Output: \ n", dict_data, "\ n")
# Konvertējiet vārdnīcu ar saraksta datiem json
json_data = json.izgāztuves (dict_data, atkāpe = 5)
# drukāt Json datus
drukāt ("JSON izvade ar ievilkumu: \ n", json_data)
# Konvertējiet vārdnīcu ar saraksta datiem json, kārtojot atslēgas
json_data = json.izgāztuves (dict_data, atkāpe = 5, sort_keys = True)
# izdrukāt sakārtotus Json datus, pamatojoties uz taustiņiem
drukāt ("Kārtota JSON izeja ar ievilkumu: \ n", json_data)

Izeja:

Pēc skripta palaišanas parādīsies šāda izeja. Pirmā JSON izeja parāda atslēgas vērtības, kā definēta vārdnīcā, un otrā JSON izeja parāda galvenās vērtības sakārtotā secībā.

3. piemērs: konvertējiet vārdnīcu JSON datos un saglabājiet to JSON failā

Ja pēc konvertēšanas no vārdnīcas vēlaties saglabāt JSON datus failā, jums tas jāizmanto izgāztuve () metodi. Šajā piemērā ir parādīts, kā vārdnīcas objektu var pārveidot par JSON datiem un saglabāt datus JSON failā. Lūk, izgāzt () metode izmanto trīs argumentus. Pirmais arguments ņem vārdnīcas objektu, kas ir definēts iepriekš. Otrais arguments aizņem failu apstrādes mainīgo, kas arī ir definēts iepriekš, lai izveidotu JSON failu. Trešais arguments nosaka ievilkuma vērtību. Jaunuzrakstītā JSON saturs tiks izdrukāts vēlāk kā izvads.

#!/ usr / bin / env python3
# Importēt Json moduli
importa json
# Definējiet vārdnīcu
dict_data = 'c-101': 'PHP programmēšana', 'c-102': 'Bash programmēšana', 'c-103':
'Python programmēšana',
'c-104': 'Uz objektu orientēta programmēšana'
# Drukāt vārdnīcas datus
drukāt ("Dictonary Output: \ n", dict_data, "\ n")
# Iestatiet Json faila nosaukumu
jsonFile = 'kursa_ saraksts.Json '
# Atveriet Json failu, lai rakstītu Json datus
ar atvērtu (jsonFile, 'w') kā fileHandler1:
json.dump (dict_data, fileHandler1, ievilkums = 2)
# Atveriet Json failu lasīšanai
fileHandler2 = atvērts (jsonFile)
drukāt ("JSON faila saturs: \ n", fileHandler2.lasīt ())

Izeja:

Pēc skripta palaišanas parādīsies šāda izeja.

Secinājums:

Nepieciešams slēptos vārdnīcas datus iekļaut JSON datos, lai atvieglotu dažādus programmēšanas uzdevumus. Šī datu konvertēšana ir svarīga, jo datus var viegli pārsūtīt no viena skripta uz citu, izmantojot JSON. Es ceru, ka šī apmācība palīdzēs pitona lietotājiem uzzināt veidus, kā pārveidot vārdnīcas datus JSON datos un pareizi tos pielietot savā skriptā.

Top 5 spēļu tveršanas kartes
Mēs visi esam redzējuši un mīlējuši straumēšanas spēles pakalpojumā YouTube. PewDiePie, Jakesepticye un Markiplier ir tikai daži no labākajiem spēlētā...
Kā izstrādāt spēli Linux
Pirms desmit gadiem maz Linux lietotāju varētu paredzēt, ka viņu iecienītā operētājsistēma kādu dienu būs populāra spēļu platforma komerciālām videosp...
Komerciālo spēļu dzinēju atvērtā koda porti
Bezmaksas, atvērtā koda un starpplatformu spēļu dzinēju atpūtu var izmantot, lai spēlētu vecos, kā arī dažus no diezgan nesenajiem spēļu nosaukumiem. ...