hoe converteer je het woordenboek naar JSON in python

JSON (JavaScript Object Notation) is een populair bestandsformaat om de gestructureerde gegevens te presenteren en de gegevens gemakkelijk over te dragen tussen de server en de applicatie. De structuur van dit bestand is vergelijkbaar met sommige Python objecten zoals list, tuple, en dictionary. Je kunt elk woordenboek object converteren naar het JSON object met behulp van dump() en dumps() methoden van de JSON module. Dit artikel toont de manieren om een woordenboek object te converteren naar het JSON object in python.

json.dumps () method:

deze methode wordt gebruikt om het woordenboek object te converteren naar JSON gegevens voor het ontleden of lezen en het is langzamer dan dump() methode.

syntaxis:

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

deze methode heeft veel optionele argumenten. Het gebruik van één verplichte en twee facultatieve argumenten wordt in dit artikel weergegeven. Hier is het eerste argument een verplicht argument dat wordt gebruikt om elk woordenboek object 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 () method:

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

syntaxis:

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

deze methode heeft veel argumenten zoals dumps (). Het gebruik van drie argumenten wordt in dit artikel Gebruikt om de gegevens van een woordenboek-object om te zetten in JSON-gegevens en de gegevens op te slaan in een JSON-bestand. Hier wordt het eerste argument gebruikt om een woordenboek-object te nemen dat moet worden omgezet in een JSON-object, en het tweede argument wordt gebruikt om de naam te nemen van de file handler 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 woordenboek object om te zetten in een JSON-bestand of JSON string worden hieronder getoond.

Voorbeeld-1: Dictionary converteren naar JSON met behulp van dumps() met inspringing

het wordt eerder vermeld dat dumps () methode een verplichte parameter heeft en het kan het dictionary object nemen om de gegevens in JSON string te converteren. In het volgende script, dict_data is een woordenboek variabele die de gegevens van een bepaald student record bevat. In het begin wordt de dumps() methode gebruikt met één argument en wordt de waarde van dict_data omgezet in JSON data. De uitvoer van zowel woordenboek en JSON formaat is hetzelfde als er geen inspringen wordt gebruikt in JSON gegevens. Vervolgens wordt de dumps () methode gebruikt met twee argumenten, en 3 wordt gebruikt als een inspringwaarde voor JSON-gegevens. De tweede JSON-uitvoer wordt gegenereerd met inspringen.

#!/usr/bin/env python3
# Import json module
import json
# Define a dictionary
dict_data = { “student_id”: “011894”, “name”: “Matthew”, “batch”: 30, “semester”:6 }
# Print dictionary data
print(“Dictonary Output: \n”, dict_data, “\n”)
# converteer dictionary naar JSON object zonder inspringen
json_data = JSON.dumps (dict_data)
# print json data
print (“JSON Output without inspringing: \n”, json_data,”\n”)
# converteer woordenboek naar JSON object met inspringing
json_data = json.dumps (dict_data,indent=3)
# JSON-gegevens afdrukken met inspringing
print (“JSON-uitvoer met inspringing: \n”, json_data)

uitvoer:

de volgende uitvoer zal verschijnen na het uitvoeren van het script.

Voorbeeld-2: converteer woordenboek 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 dictionary-object omgezet in JSON-gegevens zonder sort_keys te gebruiken en sort_keys te gebruiken om het gebruik van dit argument weer te geven. De eerste dumps() methode wordt gebruikt met indent waarde 5 en de output toont JSON gegevens met behulp van inspringing 5. In de tweede dumps() methode 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
# Import JSON module
import json
# Define a dictionary
dict_data = {‘name’:’Madison’, ‘Month’: ‘May’,’year’: 2020,’sales’:}
# Print dictionary data
print(“Dictonary Output: \n”, dict_data, “\n”)
# converteer een woordenboek met lijstgegevens naar json
json_data = json.dumps (dict_data,indent = 5)
# print json data
print (“JSON Output with inspringing: \n”, json_data)
# converteer een woordenboek met lijstgegevens naar json door sleutels
json_data = json te sorteren.dumps (dict_data,indent = 5, sort_keys = True)
# print gesorteerde JSON-gegevens gebaseerd op sleutels
print (“gesorteerde JSON-uitvoer met inspringing: \n”, json_data)

uitvoer:

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: converteer woordenboek naar JSON-gegevens en sla op in een JSON-bestand

Als u de JSON-gegevens in een bestand wilt opslaan na het converteren van het woordenboek, moet u de dump() methode gebruiken. Hoe u een woordenboek object in een JSON gegevens kunt converteren en de gegevens in een JSON-bestand kunt opslaan, wordt getoond in dit voorbeeld. Hier gebruikt de dump () methode drie argumenten. Het eerste argument neemt het woordenboek object dat eerder is gedefinieerd. Het tweede argument neemt de file handler variabele die ook is gedefinieerd voor het maken van een JSON-bestand. Het derde argument definieert de inspringwaarde. De inhoud van de nieuw geschreven JSON zal later worden afgedrukt als output.

#!/usr/bin / env python3
# Import json module
import json
# Define a dictionary
dict_data = { ‘c-101’: ‘PHP Programming’, ‘c-102’: ‘Bash Programming’, ‘c-103’:
‘Python Programming’,
‘c-104’: ‘Object Oriented Programming’}
# Print dictionary data
print (“Dictonary Output: \n”, dict_data, “\n”)
# Set the json filename
jsonFile = ‘course_list.json ‘
# Open een json-bestand voor het schrijven van json-gegevens
met open (jsonFile, ‘w’) als fileHandler1:
json.dump (dict_data, fileHandler1, indent = 2)
# Open een json-bestand om te lezen
fileHandler2 = open(JSON-bestand)
print(“de inhoud van het JSON-bestand: \n”, fileHandler2.lezen())

uitvoer:

de volgende uitvoer zal verschijnen na het uitvoeren van het script.

conclusie:

het is nodig om woordenboekgegevens te coveren in JSON-gegevens om verschillende programmeertaken gemakkelijker te maken. Deze gegevensconversie is belangrijk omdat de gegevens gemakkelijk van het ene script naar het andere script kunnen worden overgedragen 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 ze correct toe te passen in hun script.



+