Python

Hoe het woordenboek in python naar JSON te converteren

Hoe het woordenboek in python naar JSON te converteren
JSON (JavaScript Object Notation) is een populair bestandsformaat om de gestructureerde gegevens te presenteren en de gegevens eenvoudig over te dragen tussen de server en de applicatie. De structuur van dit bestand is vergelijkbaar met sommige Python-objecten zoals lijst, tuple en woordenboek. U kunt elk woordenboekobject converteren naar de JSON object met behulp van dumpen() en stortplaatsen() methodes van de json module. Dit artikel toont de manieren om elk woordenboekobject naar het JSON-object in python te converteren.

json.dumps() methode:

Deze methode wordt gebruikt om het woordenboekobject om te zetten in JSON-gegevens voor parsing of lezen en is langzamer dan dumpen() methode.

Syntaxis:

json.dumps(object, indent=Geen, sort_keys=False)

Deze methode heeft veel optionele argumenten. Het gebruik van één verplichte en twee optionele argumenten wordt in dit artikel getoond. Hier is het eerste argument een verplicht argument dat wordt gebruikt om een ​​willekeurig woordenboekobject te nemen, het tweede argument wordt gebruikt om het aantal eenheden voor inspringen te definiëren en het derde argument wordt gebruikt om sleutels te sorteren.

json.dump() methode:

Deze methode wordt gebruikt om python-object op te slaan in een JSON-bestand. Het is sneller dan de stortplaatsen() methode omdat het afzonderlijk in het geheugen en het bestand schrijft.

Syntaxis:

json.dump(woordenboek, fileHandler, indent=Geen)

Deze methode heeft veel argumenten zoals: stortplaatsen(). Het gebruik van drie argumenten wordt in dit artikel gebruikt om de gegevens van een woordenboekobject om te zetten in JSON-gegevens en de gegevens op te slaan in een JSON-bestand. Hier wordt het eerste argument gebruikt om een ​​woordenboekobject te nemen dat moet worden omgezet in een JSON-object, en het tweede argument wordt gebruikt om de naam van de bestandshandler te nemen van het bestand waar de JSON-gegevens zullen worden geschreven. Het derde argument wordt gebruikt om de inspringeenheid in te stellen.

Hoe deze twee methoden kunnen worden gebruikt om een ​​woordenboekobject om te zetten in een JSON-bestand of JSON-tekenreeks, wordt hieronder in dit artikel weergegeven:.

Voorbeeld-1: Woordenboek converteren naar JSON met behulp van stortplaatsen() met inspringing

Er is eerder vermeld dat de methode dumps() één verplichte parameter heeft en dat het woordenboekobject nodig is om de gegevens naar een JSON-tekenreeks te converteren. In het volgende script:, dict_data is een woordenboekvariabele die de gegevens van een bepaald studentrecord bevat. Aanvankelijk, de stortplaatsen() methode wordt gebruikt met één argument en de waarde van dict_data wordt omgezet in JSON-gegevensSON. De uitvoer van zowel het woordenboek als het JSON-formaat is hetzelfde als er geen inspringing wordt gebruikt in JSON-gegevens. De volgende, de stortplaatsen() methode wordt gebruikt met twee argumenten en 3 wordt gebruikt als een inspringwaarde voor JSON-gegevens. De tweede JSON-uitvoer wordt gegenereerd met inspringing.

#!/usr/bin/env python3
# Importeer json-module
import json
# Definieer een woordenboek
dict_data = "student_id": "011894", "name": "Matthew", "batch": 30, "semester":6
# Woordenboekgegevens afdrukken
print("Woordenboekuitvoer: \n", dict_data, "\n")
# Converteer woordenboek naar json-object zonder inspringing
json_data = json.dumps(dict_data)
# json-gegevens afdrukken
print("JSON-uitvoer zonder inspringing: \n",json_data, "\n")
# Converteer woordenboek naar json-object met inspringing
json_data = json.dumps(dict_data,indent=3)
# print json-gegevens met inspringing
print("JSON-uitvoer met inspringing: \n", json_data)

Uitgang:

De volgende uitvoer zal verschijnen na het uitvoeren van het script:.

Voorbeeld-2: Woordenboek converteren naar JSON met behulp van dumps() met sort_keys

De sleutels van JSON-gegevens kunnen worden gesorteerd met behulp van sort_keys argument van dumps(). De standaardwaarde van dit argument is False. In het volgende script wordt het woordenboekobject geconverteerd naar JSON-gegevens zonder gebruik te maken van sort_keys en gebruik sort_keys om het gebruik van dit argument weer te geven. De eerste dumps()-methode wordt gebruikt met inspringwaarde 5 en de uitvoer toont JSON-gegevens met inspringing 5. In de tweede methode dumps() wordt sort_keys gebruikt en ingesteld op True voor het sorteren van de sleutelwaarden. De laatste JSON-uitvoer toont de gegevens na het sorteren van sleutelwaarden.

#!/usr/bin/env python3
# Importeer json-module
import json
# Definieer een woordenboek
dict_data = 'name':'Madison','Maand':'Mei','jaar':2020,'verkoop':[1000, 2100, 3500, 1200]
# Woordenboekgegevens afdrukken
print("Woordenboekuitvoer: \n", dict_data, "\n")
# Converteer een woordenboek met lijstgegevens naar json
json_data = json.dumps(dict_data,inspringing = 5)
# json-gegevens afdrukken
print("JSON-uitvoer met inspringing: \n", json_data)
# Converteer een woordenboek met lijstgegevens naar json door sleutels te sorteren
json_data = json.dumps(dict_data,indent = 5, sort_keys = True)
# print gesorteerde json-gegevens op basis van sleutels
print("Gesorteerde JSON-uitvoer met inspringing: \n", json_data)

Uitgang:

De volgende uitvoer zal verschijnen na het uitvoeren van het script:. De eerste JSON-uitvoer toont de sleutelwaarden zoals gedefinieerd in het woordenboek en de tweede JSON-uitvoer toont de sleutelwaarden in gesorteerde volgorde.

Voorbeeld-3: Woordenboek converteren naar JSON-gegevens en opslaan in een JSON-bestand

Als u de JSON-gegevens in een bestand wilt opslaan nadat ze uit het woordenboek zijn geconverteerd, moet u gebruiken de vuilnisbuilt() methode. Hoe u een woordenboekobject naar JSON-gegevens kunt converteren en de gegevens in een JSON-bestand kunt opslaan, wordt in dit voorbeeld getoond. Hier de dumpen() methode gebruikt drie argumenten. Het eerste argument neemt het woordenboekobject dat eerder is gedefinieerd. Het tweede argument neemt de bestandshandlervariabele die ook eerder is gedefinieerd om een ​​JSON-bestand te maken. Het derde argument definieert de inspringwaarde. De inhoud van de nieuw geschreven JSON wordt later afgedrukt als uitvoer.

#!/usr/bin/env python3
# Importeer json-module
import json
# Definieer een woordenboek
dict_data = 'c-101': 'PHP-programmering', 'c-102': 'Bash-programmering', 'c-103':
'Python-programmering',
'c-104': 'Objectgeoriënteerd programmeren'
# Woordenboekgegevens afdrukken
print("Woordenboekuitvoer: \n", dict_data, "\n")
# Stel de json-bestandsnaam in
jsonFile = 'cursuslijst'.json'
# Open een json-bestand voor het schrijven van json-gegevens
met open(jsonFile, 'w') als fileHandler1:
json.dump(dict_data, fileHandler1, inspringing = 2)
# Open een json-bestand om te lezen
fileHandler2 = open(jsonFile)
print("De inhoud van het JSON-bestand: \n", fileHandler2.lezen())

Uitgang:

De volgende uitvoer zal verschijnen na het uitvoeren van het script:.

Conclusie:

Het is vereist om woordenboekgegevens om te zetten in JSON-gegevens om verschillende programmeertaken gemakkelijker te maken. Deze gegevensconversie is belangrijk omdat de gegevens gemakkelijk van het ene script naar het andere kunnen worden overgebracht met behulp van JSON. Ik hoop dat deze tutorial de python-gebruikers zal helpen om de manieren te kennen om woordenboekgegevens om te zetten in JSON-gegevens en deze correct toe te passen in hun script.

Top 5 Game Capture-kaarten
We hebben allemaal gezien en genoten van streaming gameplays op YouTube. PewDiePie, Jakesepticye en Markiplier zijn slechts enkele van de beste gamers...
Hoe een spel op Linux te ontwikkelen
Tien jaar geleden zouden niet veel Linux-gebruikers voorspellen dat hun favoriete besturingssysteem ooit een populair spelplatform voor commerciële vi...
Open source-poorten van commerciële game-engines
Gratis, open source en platformonafhankelijke game-engine-recreaties kunnen worden gebruikt om zowel oude als enkele van de vrij recente gametitels te...