Get started learning Python with DataCamp's free Intro to Python tutorial. Learn Data Science by completing interactive coding challenges and watching videos by expert instructors. Start Now!

This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join 11 million other learners and get started learning Python for data science today!

Good news! You can save 25% off your Datacamp annual subscription with the code LEARNPYTHON23ALE25 - Click here to redeem your discount

Serializare


Python oferă biblioteci JSON integrate pentru a encoda și decoda JSON.

În Python 2.5, modulul simplejson este folosit, în timp ce în Python 2.7 se folosește modulul json. Deoarece acest interpretator folosește Python 2.7, vom folosi json.

Pentru a utiliza modulul json, acesta trebuie importat mai întâi:

import json

Există două formate de bază pentru datele JSON. Fie sub formă de șir, fie ca structură de date obiect. Structura de date obiect, în Python, constă din liste și dicționare imbricate. Structura de date obiect permite utilizatorului să folosească metodele python (pentru liste și dicționare) pentru a adăuga, lista, căuta și elimina elemente din structura de date. Formatul de șir este folosit în principal pentru a transmite datele într-un alt program sau pentru a le încărca într-o structură de date.

Pentru a încărca JSON înapoi într-o structură de date, folosește metoda "loads". Această metodă ia un șir și îl transformă înapoi în structura de date obiect JSON:

import json 
print(json.loads(json_string))

Pentru a encoda o structură de date în JSON, folosește metoda "dumps". Această metodă ia un obiect și returnează un șir:

import json
json_string = json.dumps([1, 2, 3, "a", "b", "c"])
print(json_string)

Python suportă o metodă de serializare a datelor specifică Python numită pickle (și o alternativă mai rapidă numită cPickle).

O poți folosi exact în același mod.

import pickle
pickled_string = pickle.dumps([1, 2, 3, "a", "b", "c"])
print(pickle.loads(pickled_string))

Scopul acestui exercițiu este de a afișa șirul JSON cu perechea cheie-valoare "Me" : 800 adăugată la acesta.

import json # fix this function, so it adds the given name # and salary pair to salaries_json, and return it def add_employee(salaries_json, name, salary): # Add your code here return salaries_json # test code salaries = '{"Alfred" : 300, "Jane" : 400 }' new_salaries = add_employee(salaries, "Me", 800) decoded_salaries = json.loads(new_salaries) print(decoded_salaries["Alfred"]) print(decoded_salaries["Jane"]) print(decoded_salaries["Me"]) import json # fix this function, so it adds the given name # and salary pair to salaries_json, and return it def add_employee(salaries_json, name, salary): salaries = json.loads(salaries_json) salaries[name] = salary return json.dumps(salaries) # test code salaries = '{"Alfred" : 300, "Jane" : 400 }' new_salaries = add_employee(salaries, "Me", 800) decoded_salaries = json.loads(new_salaries) print(decoded_salaries["Alfred"]) print(decoded_salaries["Jane"]) print(decoded_salaries["Me"]) test_output_contains("300") test_output_contains("400") test_output_contains("800") success_msg("Great work!")

This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join over a million other learners and get started learning Python for data science today!

Previous Tutorial Next Tutorial Take the Test
Copyright © learnpython.org. Read our Terms of Use and Privacy Policy