logo

json.dumps() Python

JSON yra akronimas, reiškiantis JavaScript Object Notation. Nepaisant pavadinimo, JSON yra kalbos agnostinis formatas, dažniausiai naudojamas duomenims perduoti tarp sistemų ir kartais duomenims saugoti. Programos, parašytos Python, kaip ir daugelis kitų programavimo kalbų, gali gauti JSON formato duomenis ir gali nuosekliai perkelti duomenis atmintyje į JSON formatą. Python palaiko JSON per integruotą paketą, vadinamą json. Norėdami naudoti šią funkciją, importuokite json paketą į Python scenarijų arba modulį, kuriame norite suskirstyti arba deserializuoti savo duomenis. JSON naudoja kableliais atskirtas raktų verčių poras, esančias dvigubose kabutėse ir atskirtas dvitaškiais. JSON failo turinį galima atskirti riestiniais skliaustais { } arba laužtiniais skliaustais [] (kai kuriose lokalėse taip pat vadinami skliaustais). Atrodo, kad JSON formatas yra panašus į Python žodyną, tačiau JSON formato specifika turi didelių skirtumų, todėl būkite atsargūs dirbdami su abiem formatais.

Pastaba: Norėdami gauti daugiau informacijos, žr. Skaityti, Rašykite ir analizuokite JSON naudodami Python



Json.dumps()

Funkcija json.dumps() konvertuos Python objektų poaibį į json eilutę. Ne visi objektai yra konvertuojami, todėl gali tekti sukurti duomenų, kuriuos norite atskleisti, žodyną prieš serialą į JSON.

Sintaksė:
json.dumps(obj, *, skipkeys=Klaidingas, biztos_ascii=Tiesa, check_circular=Tiesa, allow_nan=Tiesa, cls=Nėra, indent=Nėra, separators=Nėra, numatytasis=nėra, sort_keys=klaidingas, **kw)
Parametrai:
obj: Serijuokite obj kaip JSON formatuotą srautą
praleisti klavišus: Jei skipkeys yra True (numatytasis: False), tada diktavimo klavišai, kurie nėra pagrindinio tipo (str, int, float, bool, None), bus praleisti, užuot padidinę TypeError.
užtikrinti_ascii: Jei „varmuus_ascii“ yra „True“ (numatytasis), garantuojama, kad išvestyje bus pašalinti visi įeinantys ne ASCII simboliai. Jei „ varmistaa_ascii“ yra „False“, šie simboliai bus išvesti tokie, kokie yra.
check_circular: Jei check_circular vertė yra False (numatytasis nustatymas: True), tada konteinerio tipų apskrito nuorodos tikrinimas bus praleistas, o žiedinė nuoroda sukels OverflowError (arba dar blogesnę).
leisti_in: Jei allow_nan yra False (numatytasis nustatymas: True), tai bus ValueError, kai nuosekliai sujungiamos slankiosios reikšmės (nan, inf, -inf), griežtai laikantis JSON specifikacijos. Jei allow_nan yra True, bus naudojami jų JavaScript atitikmenys (NaN, Infinity, -Infinity).
įtrauka: Jei įtrauka yra neneigiamas sveikasis skaičius arba eilutė, tada JSON masyvo elementai ir objekto nariai bus gražiai atspausdinti naudojant tą įtraukos lygį. Įtraukos lygis 0, neigiamas arba įterps tik naujas eilutes. Nėra (numatytasis) pasirenka kompaktiškiausią vaizdą. Naudojant teigiamo sveikojo skaičiaus įtrauką, įtraukiama tiek tarpų viename lygyje. Jei įtrauka yra eilutė (pvz., ), ta eilutė naudojama įtraukai kiekvienam lygiui.
separatoriai: Jei nurodyta, skyrikliai turi būti (item_separator, key_separator) eilė. Numatytoji vertė yra (', ', ': '), jei įtrauka yra Nėra ir (', ', ': ') kitu atveju. Norėdami gauti kompaktiškiausią JSON atvaizdą, turėtumėte nurodyti (', ', ':'), kad pašalintumėte tarpą.
numatytas: Jei nurodyta, numatytoji funkcija turėtų būti funkcija, kuri iškviečiama objektams, kurių kitaip negalima nuosekliai išdėstyti. Ji turėtų grąžinti JSON koduojamą objekto versiją arba iškelti TypeError. Jei nenurodyta, iškeliama TypeError.
sort_keys: Jei sort_keys yra True (numatytasis: False), tada žodynų išvestis bus rūšiuojama pagal raktą.

1 pavyzdys: Perdavus Python žodyną funkcijai json.dumps(), bus pateikta eilutė.



Python3






import> json> # Creating a dictionary> Dictionary>=>{>1>:>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>}> > # Converts input dictionary into> # string and stores it in json_string> json_string>=> json.dumps(Dictionary)> print>(>'Equivalent json string of input dictionary:'>,> >json_string)> print>(>' '>)> # Checking type of object> # returned by json.dumps> print>(>type>(json_string))>

>

>

kas yra modulo c++

Išvestis

Lygiavertė json žodyno eilutė: {1: Sveiki, 2: į, 3: Geeks, 4: for, 5: Geeks}

2 pavyzdys: Praleidimo klavišus nustatę į True (numatytasis: False), automatiškai praleidžiame klavišus, kurie nėra pagrindinio tipo.

Python3




import> json> Dictionary>=>{(>1>,>2>,>3>):>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>}> # Our dictionary contains tuple> # as key, so it is automatically> # skipped If we have not set> # skipkeys = True then the code> # throws the error> json_string>=> json.dumps(Dictionary,> >skipkeys>=> True>)> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

>

kajal aggarwal
>

Išvestis

Lygiavertė žodyno json eilutė: {2: to, 3: Geeks, 4: for, 5: Geeks}

3 pavyzdys:

Python3




import> json> # We are adding nan values> # (out of range float values)> # in dictionary> Dictionary>=>{(>1>,>2>,>3>):>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>,>6>:>float>(>'nan'>)}> # If we hadn't set allow_nan to> # true we would have got> # ValueError: Out of range float> # values are not JSON compliant> json_string>=> json.dumps(Dictionary,> >skipkeys>=> True>,> >allow_nan>=> True>)> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

>

>

Išvestis:

Lygiavertė žodyno json eilutė: {2: to, 3: Geeks, 4: for, 5: Geeks, 6: NaN}

4 pavyzdys:

Python3

gimp ištrynimo fonas




import> json> Dictionary>=>{(>1>,>2>,>3>):>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>,>6>:>float>(>'nan'>)}> # Indentation can be used> # for pretty-printing> json_string>=> json.dumps(Dictionary,> >skipkeys>=> True>,> >allow_nan>=> True>,> >indent>=> 6>)> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

Atsisiųsti xvideoservicethief ubuntu 14.04
>

>

Išvestis:

Equivalent json string of dictionary: { '2': 'to', '3': 'Geeks', '4': 'for', '5': 'Geeks', '6': NaN }>

5 pavyzdys:

Python3




import> json> Dictionary>=>{(>1>,>2>,>3>):>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>,>6>:>float>(>'nan'>)}> # If specified, separators should be> # an (item_separator, key_separator)tuple> # Items are separated by '.' and key,> # values are separated by '='> json_string>=> json.dumps(Dictionary,> >skipkeys>=> True>,> >allow_nan>=> True>,> >indent>=> 6>,> >separators>=>(>'. '>,>' = '>))> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

>

>

Išvestis:

Equivalent json string of dictionary: { '2' = 'to'. '3' = 'Geeks'. '4' = 'for'. '5' = 'Geeks'. '6' = NaN }>

6 pavyzdys:

Python3




palyginti su styga

import> json> Dictionary>=>{>'c'>:>'Welcome'>,>'b'>:>'to'>,> >'a'>:>'Geeks'>}> json_string>=> json.dumps(Dictionary,> >indent>=> 6>,> >separators>=>(>'. '>,>' = '>),> >sort_keys>=> True>)> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

>

>

Išvestis:

Equivalent json string of dictionary: { 'a' = 'Geeks'. 'b' = 'to'. 'c' = 'Welcome' }>