JSON (JavaScript Object Notation) är det populära dataformatet som används för att presentera strukturerade data. Det är en vanlig praxis att överföra och ta emot data mellan servern och webbapplikationen i JSON-format. Du kan kolla in hur man analyserar JSON i Python.
Python dict till json
för att konvertera Python dict till json, använd den inbyggda json.dumps () metod. Json.dumps () – funktionen konverterar ordlistan till ett strängobjekt, inte JSON (dictionary) – objektet! så du måste ladda din sträng i en dict för att använda den med hjälp av json.laster () metod.
så om du vill konvertera Python dict till json måste du först konvertera en ordlista till sträng och sedan använda json.laster () metod konvertera till JSON.
om du har ett Python-objekt kan du konvertera det till en JSON-sträng med json.dumps () metod. Om du vill arbeta med JSON (sträng eller fil som innehåller JSON-objektet) kan du använda Pythons json-modul. Det hjälper om du importerar json en modul innan du kan använda den.
import json
JSON-modulen gör det enkelt att tolka JSON-strängarna och filerna som innehåller JSON-objektet.
nu kan du konvertera en ordlista till en JSON-sträng med json.dumps () metod.
processen för kodning av JSON kallas vanligtvis serialisering. Den termen avser att omvandla data till en serie byte (därmed seriell) som ska lagras eller överföras över nätverket.
du kan också höra termen marshaling, men det är hela andra diskussionen. Naturligtvis är deserialisering en ömsesidig process för avkodning av data som har lagrats eller levererats i JSON-standarden.
se följande exempel.
# app.pyimport jsonappDict = { 'name': 'messenger', 'playstore': True, 'company': 'Facebook', 'price': 100}app_json = json.dumps(appDict)print(app_json)
så vi har definierat en ordbok och sedan konvertera den ordlistan till JSON med json.dumps () metod. Utgången är följande.
om du vill sortera nycklarna, använd sort_keys som det andra argumentet till json_dumps().
se följande exempel.
# app.pyimport jsonpersonDict = { 'bill': 'tech', 'federer': 'tennis', 'ronaldo': 'football', 'woods': 'golf', 'ali': 'boxing'}app_json = json.dumps(personDict, sort_keys=True)print(app_json)
utgången är följande.
json.dumps () returnerar JSON-strängrepresentationen av python dict.
skriva JSON till en fil.
om vi vill skriva JSON till en fil i Python kan vi använda json.dump () metod.
se följande kod.
# app.pyimport jsonpersonDict = { 'bill': 'tech', 'federer': 'tennis', 'ronaldo': 'football', 'woods': 'golf', 'ali': 'boxing'}with open('person.txt', 'w') as json_file: json.dump(personDict, json_file)
i ovanstående program har vi öppnat filen med namnet person.txt i skrivläge med ’w.’ om en fil inte redan finns kommer den att skapas. Sedan omvandlar json_dump () personDict till JSON-strängen, sparad i personen.txt-fil.
när du kör ovanstående kod, personen.txt-fil skapas, och JSON-strängen inuti den filen skrivs.
låt oss säga att du har en ordbok som denna.
# app.pydata = {'Eleven': 'Millie', 'Mike': 'Finn', 'Will': 'Noah'}
nu måste du dumpa denna dict till json till en fil, då är det enklare sättet att göra det genom att följa.
# app.pyimport jsondata = {'Eleven': 'Millie', 'Mike': 'Finn', 'Will': 'Noah'}with open('app.json', 'w') as fp: json.dump(data, fp)
nu, om du kör ovanstående fil, kan du se att appen.json-filen skapas, och sedan har den följande innehåll.
{ "Eleven": "Millie", "Mike": "Finn", "Will": "Noah" }
ovanstående exempel är ett enkelt fall av filhantering i Python. Vi har använt funktionen File open () i Python.
Python dict till json dubbla citat
om du behöver skapa ordlistan med alla namn i dubbla citat istället för standard enstaka citat, som Python använder, kan du använda följande kod.
# app.pyimport jsonclass App(dict): def __str__(self): return json.dumps(self)couples = , , , ]pairs = App(couples)print(pairs)
se utgången.
➜ pyt python3 app.py{"eleven": "Millie", "mike": "Finn", "max": "Sadie", "dustin": "Gaten"}➜ pyt
slutligen, Hur konvertera Python Dictionary till JSON exempel är över.
rekommenderade inlägg
Python lista till json
Python ordbok till DataFrame
Python ordbok till CSV
Python sträng till lista
Python sträng till int