JSON (JavaScript Object Notation) är ett populärt filformat för att presentera strukturerad data och överföra data mellan servern och applikationen enkelt. Strukturen för den här filen liknar vissa Python-objekt som list, tuple och dictionary. Du kan konvertera alla ordboksobjekt till JSON-objektet med hjälp av dump() och dumps () – metoder i json-modulen. Den här artikeln visar sätten att konvertera alla ordboksobjekt till JSON-objektet i python.
json.dumps () metod:
denna metod används för att konvertera ordboksobjektet till JSON-data för tolkning eller läsning och det är långsammare än dump () – metoden.
Syntax:
denna metod har många valfria argument. Användningen av ett obligatoriskt och två valfria argument visas i den här artikeln. Här är det första argumentet ett obligatoriskt argument som används för att ta något ordboksobjekt, det andra argumentet används för att definiera antalet enheter för indrag och det tredje argumentet används för att sortera nycklar.
json.dump () metod:
denna metod används för att lagra python-objekt i en JSON-fil. Det är snabbare än dumps () – metoden eftersom den skriver i minnet och filen separat.
Syntax:
denna metod har många argument som dumps (). Användningen av tre argument används i den här artikeln för att konvertera data från ett ordboksobjekt till JSON-data och lagra data i en JSON-fil. Här används det första argumentet för att ta ett ordboksobjekt som måste konverteras till ett JSON-objekt, och det andra argumentet används för att ta namnet på filhanteraren för filen där JSON-data kommer att skrivas. Det tredje argumentet används för att ställa in indragningsenheten.
hur dessa två metoder kan användas för att konvertera ordboksobjekt till en JSON-fil eller JSON-sträng visas nedan i den här artikeln.
exempel-1: Konvertera ordbok till JSON med dumps() med indrag
det nämns tidigare att dumps () – metoden har en obligatorisk parameter och det kan ta ordboksobjektet för att konvertera data till JSON-sträng. I följande skript är dict_data en ordboksvariabel som innehåller data för en viss studentpost. Först används dumps () – metoden med ett argument och värdet av dict_data konverteras till JSON-data. Utsignalen från både ordlista och JSON-format är densamma om ingen indrag används i JSON-data. Därefter används dumps () – metoden med två argument, och 3 används som ett indragningsvärde för JSON-data. Den andra JSON-utgången kommer att generera med indrag.
# importera JSON-modul
importera json
# definiera en ordbok
dict_data = { ”student_id”: ”011894”, ”name”: ”Matthew”, ”batch”: 30, ”Termin”:6 }
# Print dictionary data
print(”Dictonary Output: \n”, dict_data, ”\n”)
# konvertera ordbok till JSON-objekt utan indrag
json_data = json.dumpar (dict_data)
# Skriv ut json-data
Skriv ut (”JSON-utgång utan indrag: \n”,json_data, ”\n”)
# konvertera ordbok till json-objekt med indrag
json_data = json.dumpar (dict_data,strecksats=3)
# Skriv ut json-data med indrag
Skriv ut (”JSON-utgång med indrag: \n”, json_data)
utgång:
följande utdata visas efter att ha kört skriptet.
exempel-2: Konvertera ordbok till JSON med dumps() med sort_keys
nycklarna till JSON-data kan sorteras med sort_keys argument för dumps(). Standardvärdet för detta argument är falskt. I följande skript konverteras ordboksobjektet till JSON-data utan att använda sort_keys och använda sort_keys för att visa användningen av detta argument. Den första dumpningsmetoden() används med indragningsvärde 5 och utgången visar JSON-data med indrag 5. I metoden second dumps() används sort_keys och sätts till True för att sortera nyckelvärdena. Den sista JSON-utgången visar data efter sortering av nyckelvärden.
# importera JSON-modul
importera json
# definiera en ordbok
dict_data = {’name’:’Madison’, ’månad’:’maj’,’år’: 2020, ’försäljning’:}
# Skriv ut ordboksdata
Skriv ut(”Dictonary Output: \n”, dict_data, ”\n”)
# konvertera en ordbok med listdata till json
json_data = json.dumpar (dict_data,strecksats = 5)
# Skriv ut json-data
Skriv ut (”JSON-utgång med indrag: \n”, json_data)
# konvertera en ordbok med listdata till json genom att sortera tangenter
json_data = json.dumpar (dict_data, indent = 5, sort_keys = True)
# Skriv ut sorterade json-data baserat på nycklar
Skriv ut (”sorterad JSON-utgång med indrag: \n”, json_data)
utgång:
följande utdata visas efter att ha kört skriptet. Den första JSON-utgången visar nyckelvärdena enligt definitionen i ordlistan och den andra JSON-utgången visar nyckelvärdena i sorterad ordning.
exempel-3: Konvertera ordbok till JSON-data och lagra i en JSON-fil
om du vill lagra JSON-data i en fil efter konvertering från ordlistan måste du använda dump () – metoden. Hur du kan konvertera ett ordboksobjekt till en JSON-data och lagra data i en JSON-fil visas i det här exemplet. Här använder dump () – metoden tre argument. Det första argumentet tar ordboksobjektet som definierats tidigare. Det andra argumentet tar filhanterarvariabeln som också definieras tidigare för att skapa en JSON-fil. Det tredje argumentet definierar indragningsvärdet. Innehållet i den nyskrivna JSON kommer att skrivas ut senare som utdata.
# importera JSON-modul
importera json
# definiera en ordbok
dict_data = { ’c-101’: ’PHP-programmering’, ’c-102’: ’Bash-programmering’, ’c-103’:
’Python-programmering’,
’c-104’: ’Objektorienterad programmering’}
# Skriv ut ordboksdata
Skriv ut (”Dictonary Output: \n”, dict_data,”\n”)
# Ställ in json-filnamnet
jsonFile = ’course_list.json ’
# öppna en json-fil för att skriva json-data
med open (jsonFile, ’w’) som filhandler1:
json.dump (dict_data, fileHandler1, indent = 2)
# öppna en json-fil för läsning
fileHandler2 = open(jsonFile)
print(”innehållet i JSON-filen: \n”, fileHandler2.läs())
utgång:
följande utdata visas efter att ha kört skriptet.
slutsats:
det krävs att hemliga ordboksdata till JSON-data för att göra olika programmeringsuppgifter enklare. Denna datakonvertering är viktig eftersom data enkelt kan överföras från ett skript till ett annat skript med hjälp av JSON. Jag hoppas att denna handledning hjälper python-användarna att känna till sätten att konvertera ordboksdata till JSON-data och tillämpa dem ordentligt i sitt skript.