Pytonorm

Hur man konverterar ordboken till JSON i python

Hur man konverterar ordboken till JSON i python
JSON (JavaScript Object Notation) är ett populärt filformat för att enkelt presentera strukturerad data och överföra data mellan servern och applikationen. Strukturen för den här filen liknar vissa Python-objekt som lista, tupel och ordlista. Du kan konvertera valfritt ordbokobjekt till JSON objekt med hjälp av dumpa() och dumpar () metoder för json modul. Den här artikeln visar hur du konverterar valfritt ordboksobjekt till JSON-objektet i python.

json.dumps () metod:

Denna metod används för att konvertera ordboksobjektet till JSON-data för parsning eller läsning och det är långsammare än dumpa() metod.

Syntax:

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

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 ordlistobjekt, det andra argumentet används för att definiera antalet enheter för indragning 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 dumpar () metod eftersom den skriver i minnet och filen separat.

Syntax:

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

Denna metod har många argument som dumpar (). Användningarna av tre argument används i den här artikeln för att konvertera data från ett ordbokobjekt till JSON-data och lagra data i en JSON-fil. Här används det första argumentet för att ta ett ordbokobjekt som behöver 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 ordlistaobjekt till en JSON-fil eller JSON-sträng visas nedan i den här artikeln.

Exempel 1: Konvertera ordbok till JSON med dumpar () med indrag

Det har tidigare nämnts att dumps () -metoden har en obligatorisk parameter och det kan ta ordboksobjektet att konvertera data till JSON-sträng. I följande skript, dict_data är en ordboksvariabel som innehåller data för en viss studentpost. I början, soptipparna () metoden används med ett argument och värdet på dict_data omvandlas till JSON-data. Utgången från både ordlista och JSON-format är densamma om ingen indragning används i JSON-data. Nästa, soptipparna () metoden används med två argument och 3 används som ett indragningsvärde för JSON-data. Den andra JSON-utgången genereras med indrag.

#!/ usr / bin / env python3
# Importera json-modul
importera json
# Definiera en ordbok
dict_data = "student_id": "011894", "name": "Matthew", "batch": 30, "semester": 6
# Skriv ut ordboksdata
skriv ut ("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-utdata utan indrag: \ n", json_data, "\ n")
# Konvertera ordbok till json-objekt med indrag
json_data = json.dumpar (dict_data, indent = 3)
# skriv ut json-data med indrag
skriv ut ("JSON-utdata med indrag: \ n", json_data)

Produktion:

Följande utdata visas efter körning av skriptet.

Exempel 2: Konvertera ordlista till JSON med hjälp av dumpar () med sort_keys

Nycklarna till JSON-data kan sorteras med hjälp av sort_keys argument av dumpar (). Standardvärdet för detta argument är False. I följande skript konverteras ordboksobjektet till JSON-data utan användning sort_keys och använder sort_keys för att visa användningen av detta argument. Den första dumpningsmetoden () används med indragvärde 5 och utdata visar JSON-data med indrag 5. I den andra dumpningsmetoden () används sort_keys och ställs in på True för att sortera nyckelvärdena. Den senaste JSON-utgången visar data efter sortering av nyckelvärden.

#!/ usr / bin / env python3
# Importera json-modul
importera json
# Definiera en ordbok
dict_data = 'name': 'Madison', 'Month': 'May', 'year': 2020, 'sales': [1000, 2100, 3500, 1200]
# Skriv ut ordboksdata
skriv ut ("Dictonary Output: \ n", dict_data, "\ n")
# Konvertera en ordlista med listdata till json
json_data = json.dumpar (dict_data, indent = 5)
# skriv ut json-data
skriv ut ("JSON-utdata med indrag: \ n", json_data)
# Konvertera en ordlista med listdata till json genom att sortera nycklar
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)

Produktion:

Följande utdata visas efter körning av skriptet. Den första JSON-utgången visar nyckelvärdena som definieras i ordlistan och den andra JSON-utgången visar nyckelvärdena i sorterad ordning.

Exempel 3: Konvertera ordlista till JSON-data och lagra till en JSON-fil

Om du vill lagra JSON-data i en fil efter konvertering från ordboken måste du använda soptippen() metod. Hur du kan konvertera ett ordbokobjekt till en JSON-data och lagra data i en JSON-fil visas i detta exempel. Här, den dumpa() metoden använder tre argument. Det första argumentet tar ordboksobjektet som har definierats tidigare. Det andra argumentet tar filhanterarvariabeln som också har definierats 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.

#!/ usr / bin / env python3
# 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 = 'kurs_lista.json '
# Öppna en json-fil för att skriva json-data
med open (jsonFile, 'w') som fileHandler1:
json.dump (dict_data, fileHandler1, indent = 2)
# Öppna en json-fil för läsning
fileHandler2 = öppen (jsonFile)
print ("Innehållet i JSON-filen: \ n", fileHandler2.läsa())

Produktion:

Följande utdata visas efter körning av skriptet.

Slutsats:

Det är nödvändigt att dölja ordboksdata till JSON-data för att underlätta olika programmeringsuppgifter. Denna datakonvertering är viktig eftersom data enkelt kan överföras från ett skript till ett annat skript med JSON. Jag hoppas att den här guiden hjälper pythonanvändarna att veta hur man konverterar ordboksdata till JSON-data och tillämpar dem ordentligt i sitt skript.

SuperTuxKart för Linux
SuperTuxKart är en fantastisk titel som är utformad för att ge dig Mario Kart-upplevelsen gratis på ditt Linux-system. Det är ganska utmanande och rol...
Battle for Wesnoth Tutorial
Slaget om Wesnoth är ett av de mest populära open source-strategispel som du kan spela just nu. Det här spelet har inte bara utvecklats under mycket l...
0 A.D. Handledning
Av de många strategispelen där ute, 0 A.D. lyckas framstå som en omfattande titel och ett mycket djupt, taktiskt spel trots att det är öppen källkod. ...