logo

Kako pretvoriti slovar Python v JSON?

JSON je kratica za JavaScript Object Notation. To pomeni, da se za shranjevanje in prenos podatkov uporablja skriptna (izvršljiva) datoteka, sestavljena iz besedila v programskem jeziku. Python podpira JSON prek vgrajenega paketa JSON. Za uporabo te funkcije uvozimo paket JSON v skript Python. Besedilo v JSON je narejeno prek niza v narekovajih, ki vsebuje vrednost v preslikavi ključa in vrednosti znotraj {} . Podoben je slovarju v Python .

Opomba: Za več informacij glejte Branje, pisanje in razčlenjevanje JSON z uporabo Pythona



Metode, uporabljene za pretvorbo Pythona v JSON in pisanje JSON

  • Uporaba funkcije dump().
  • Uporaba funkcije dumps().
  • Razlika med slovarjem in JSON

Pretvorite slovarski Python v datoteko JSON z uporabo json.dump()

V tem programu bomo slovar Python pretvorili v objekt JSON in ga nato shranili v datoteko. Najprej uvozimo modul JSON in nato definiramo slovar, v katerem so shranjeni podatki študentov. Zdaj pa bomo uporabili json.dump() metoda za pretvorbo in pisanje objekta JSON v datoteko skupaj z metoda open(). obdelave datotek v Pythonu. Datoteko sample.json odpremo v načinu pisanja in nato datoteko zapišemo z metodo json.dump() modula JSON v Pythonu.

Python
import json # Define student_details dictionary student_details ={ 'name' : 'sathiyajith', 'rollno' : 56, 'cgpa' : 8.6, 'phonenumber' : '9976770500' } # Convert and write JSON object to file with open('sample.json', 'w') as outfile: json.dump(student_details, outfile)>

Izhod:



Pretvorite Python v objekt JSON Uporaba funkcije dumps().

V spodnji kodi bomo pretvorili a Slovar Python v objekt JSON z uporabo json.dumps() metoda modula JSON v Pythonu. Najprej uvozimo modul JSON in nato definiramo slovar, ki hrani podatke o zaposlenih. Po tem pretvorimo 'podrobnosti_zaposlenega' slovarja v objekt JSON z uporabo metode json.dumps() in shranjen v spremenljivko 'json_object'.

Python
# import json module import json # define Python dictionary employee_details ={ 'id': '04', 'name': 'sunil', 'department': 'HR' } # Convert Python to JSON  json_object = json.dumps(employee_details, indent = 4) # Print JSON object print(json_object)>

Izhod
{ 'id': '04', 'name': 'sunil', 'department': 'HR' }>

Pretvarjanje ugnezdenega slovarja v JSON v Pythonu

V spodnji kodi bomo pretvorili ugnezdeni slovar v JSON v Pythonu. Najprej uvozimo modul JSON in nato ustvarimo ugnezdeni slovar. Nato pretvorimo ugnezdeni slovar v JSON z uporabo metode json.dumps() tako, da podamo slovar 'oseba' in 'indent=4' kot argument v njem. Na koncu natisnemo pretvorjeni JSON.

Python
import json # Create a nested dictionary person = { 'name': 'John Doe', 'age': 30, 'address': { 'street': '123 Main St', 'city': 'Anytown', 'state': 'CA' } } # Convert person dictionary to JSON json_string = json.dumps(person, indent=4) print(json_string)>

Izhod
{ 'name': 'John Doe', 'age': 30, 'address': { 'street': '123 Main St', 'city': 'Anytown', 'state': 'CA' } }>

Pretvori slovar v citate JSON

Spodnja koda bo pretvorila slovar Python v niz JSON z dvojnimi narekovaji okoli ključev in vrednosti, to lahko dosežemo s funkcijo json.dumps() z zagotovi_ascii parameter nastavljen na ' False'.



Python
import json # Create a dictionary data = { 'name': 'Krishna', 'age': 30, 'city': 'Mathura' } # Convert the dictionary to a  # JSON string with double quotes json_string = json.dumps(data, ensure_ascii=False) print(json_string)>

Izhod
{'name': 'Krishna', 'age': 30, 'city': 'Mathura'}>

Pretvorite slovar v polje JSON v Pythonu

V spodnji kodi bomo pretvorili slovar Python v matriko JSON. Najprej ustvarimo vzorčne slovarske 'podatke' in nato ustvarimo seznam slovarjev z uporabo razumevanja seznamov za ponavljanje ključev slovarja in jih shranimo v spremenljivko 'niz'. Nato pretvorite matriko v matriko JSON s funkcijo json.dumps() in nato natisnite matriko JSON.

Python
import json # Create a dictionary data = { 'name': 'Krishna', 'Course': 'DSA', 'Batch': 'July_2023' } array = [{i: data[i]} for i in data] # Convert the dictionary into a JSON array json_array = json.dumps(array) print(json_array)>

Izhod
[{'name': 'Krishna'}, {'Course': 'DSA'}, {'Batch': 'July_2023'}]>

Pretvorite slovar v JSON z uporabo sort_keys v Pythonu

V spodnji kodi bomo pretvorili slovar Python z uporabo med razvrščanjem ključev. Za pretvorbo slovarja Python v niz JSON z razvrščenimi ključi moramo določiti ' sort_keys' parameter kot 'Prav' v json.dumps() funkcijo. V izhodu lahko vidimo, da so podatki razvrščeni na podlagi ključev.

Python
import json # Create a dictionary with unsorted keys marks = { 'Binod': 49, 'Aparna': 71, 'Jaya': 83, 'Deepak': 89 } # Convert the dictionary to a # JSON string with sorted keys json_string = json.dumps(marks, sort_keys=True) print(json_string)>

Izhod
{'Aparna': 71, 'Binod': 49, 'Deepak': 89, 'Jaya': 83}>

Razlika med slovarjem in JSON

da ne

JSON

Slovar

1.

JSON (JavaScript Object Notation) je format za izmenjavo podatkov, ki se uporablja za shranjevanje in izmenjavo podatkov med sistemi.

Slovar v Pythonu je vgrajena podatkovna struktura, ki se uporablja za shranjevanje zbirke parov ključ-vrednost.

java iterator za zemljevid

2.

Ključi JSON morajo biti nizi in v dvojnih narekovajih.

Slovarski ključi so lahko različnih tipov podatkov, vključno z nizi, številkami in tuplemi (nespremenljivi tipi).

3.

JSON ima strogo sintakso s pari ključ-vrednost, ločenimi z dvopičji (:), in pari, ločenimi z vejicami (,). Zavit oklepaj {} obdaja objekte JSON.

Slovarji Python uporabljajo zavite oklepaje {}, da zaprejo pare ključ-vrednost, z dvopičji : ločujejo ključe in vrednosti.

4.

Ključi JSON in vrednosti nizov morajo biti v dvojnih narekovajih (npr. ključ: vrednost).

V slovarjih Python lahko ključe navedete brez narekovajev (npr. ključ: vrednost), čeprav so dovoljeni tudi narekovaji.

listnode java

5.

Npr. {ime: Ram, starost: 30}

Npr. {ime: Shyam, starost: 30}

6.

Do vrednosti JSON se dostopa s ključi kot nizi (npr. data[name]).

Do slovarskih vrednosti se dostopa s ključi (npr. data[name]) ali z uporabo metode get().

7.

Podatke JSON je mogoče shraniti v datoteke in jih naložiti s funkcijami, kot sta json.dump() in json.load().

Slovarje Python je mogoče tudi serializirati v datoteke z različnimi metodami, vendar morate sami ravnati z logiko serializacije/deserializacije.