Lese og skrive JSON til en fil i Python

Lese og skrive JSON til en fil i Python

Den fullstendige formen for JSON er Javascript Object Notation. Det betyr at en script (kjørbar) fil som er laget av tekst i et programmeringsspråk, brukes til å lagre og overføre dataene. Python støtter JSON gjennom en innebygd pakke kalt JSON . For å bruke denne funksjonen importerer vi JSON-pakken i Python-skriptet. Teksten i JSON gjøres gjennom anførselstegn som inneholder verdien i nøkkelverdi-tilordning i { }. Det ligner på ordbok i Python .

Skriver JSON til en fil i Python

Serialisering av JSON refererer til transformasjon av data til en serie byte (derav seriell) som skal lagres eller overføres over et nettverk. For å håndtere dataflyten i en fil, bruker JSON-biblioteket i Python dump () eller dumper () funksjon for å konvertere Python-objektene til deres respektive JSON-objekter, slik at det gjør det enkelt å skrive data til filer. Se følgende tabell gitt nedenfor.

PYTHONOBJEKT JSON OBJEKT
Dict gjenstand
liste, tuppel array
str streng
int, lang, flyte tall
ekte ekte
Falsk falsk
Ingen null

Metode 1: Skrive JSON til en fil i Python ved å bruke json.dumps()

JSON-pakken i Python har en funksjon kalt json.dumps() som hjelper til med å konvertere en ordbok til et JSON-objekt. Det krever to parametere:

    ordbok – navnet på en ordbok som skal konverteres til et JSON-objekt. innrykk – definerer antall enheter for innrykk

Etter å ha konvertert ordboken til et JSON-objekt, kan du ganske enkelt skrive den til en fil ved å bruke skrivefunksjonen.

Python3




import> json> # Data to be written> dictionary> => {> > 'name'> :> 'sathiyajith'> ,> > 'rollno'> :> 56> ,> > 'cgpa'> :> 8.6> ,> > 'phonenumber'> :> '9976770500'> }> # Serializing json> json_object> => json.dumps(dictionary, indent> => 4> )> # Writing to sample.json> with> open> (> 'sample.json'> ,> 'w'> ) as outfile:> > outfile.write(json_object)>

Produksjon:

Metode 2: Skrive JSON til en fil i Python ved å bruke json.dump()

En annen måte å skrive JSON til en fil på er å bruke metoden json.dump() JSON-pakken har dump-funksjonen som direkte skriver ordboken til en fil i form av JSON, uten å måtte konvertere den til et faktisk JSON-objekt. Det tar 2 parametere:

    ordbok – navnet på en ordbok som skal konverteres til et JSON-objekt. filpeker – pekeren til filen åpnet i skrive- eller tilleggsmodus.

Python3




# Python program to write JSON> # to a file> import> json> # Data to be written> dictionary> => {> > 'name'> :> 'sathiyajith'> ,> > 'rollno'> :> 56> ,> > 'cgpa'> :> 8.6> ,> > 'phonenumber'> :> '9976770500'> }> with> open> (> 'sample.json'> ,> 'w'> ) as outfile:> > json.dump(dictionary, outfile)>

Produksjon:

Leser JSON fra en fil som bruker Python

Deserialisering er det motsatte av serialisering, dvs. konvertering av JSON-objekter til deres respektive Python-objekter. load()-metoden brukes for det. Hvis du har brukt JSON-data fra et annet program eller fått det som et strengformat av JSON, kan det enkelt deserialiseres med load(), som vanligvis brukes til å laste fra en streng, ellers er rotobjektet i en liste eller Dict.

Leser JSON fra en fil ved hjelp av json.load()

JSON-pakken har json.load()-funksjonen som laster JSON-innholdet fra en JSON-fil til en ordbok. Det krever én parameter:

    Filpeker: En filpeker som peker til en JSON-fil.

Python3




import> json> # Opening JSON file> with> open> (> 'sample.json'> ,> 'r'> ) as openfile:> > # Reading from json file> > json_object> => json.load(openfile)> print> (json_object)> print> (> type> (json_object))>

Produksjon: