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

Serialisasi


Python menyediakan pustaka JSON bawaan untuk melakukan encoding dan decoding JSON.

Pada Python 2.5, modul simplejson digunakan, sedangkan pada Python 2.7, modul json digunakan. Karena interpreter ini menggunakan Python 2.7, kita akan menggunakan json.

Untuk menggunakan modul json, modul tersebut harus diimpor terlebih dahulu:

import json

Ada dua format dasar untuk data JSON. Baik dalam bentuk string ataupun struktur data objek. Struktur data objek, dalam Python, terdiri dari daftar (list) dan kamus (dictionary) yang bersarang satu sama lain. Struktur data objek memungkinkan kita menggunakan metode Python (untuk daftar dan kamus) untuk menambah, mendaftar, mencari, dan menghapus elemen dari struktur data tersebut. Format String digunakan terutama untuk mengirimkan data ke program lain atau memuat ke dalam suatu struktur data.

Untuk memuat kembali JSON ke dalam struktur data, gunakan metode "loads". Metode ini mengambil string dan mengubahnya kembali menjadi struktur data objek json:

import json
print(json.loads(json_string))

Untuk melakukan encoding struktur data ke JSON, gunakan metode "dumps". Metode ini mengambil sebuah objek dan mengembalikan sebuah String:

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

Python mendukung metode serialisasi data khusus Python yang disebut pickle (dan alternatif yang lebih cepat disebut cPickle).

Anda dapat menggunakannya dengan cara yang sama persis.

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

Tujuan latihan ini adalah untuk mencetak string JSON dengan pasangan kunci-nilai "Me" : 800 ditambahkan ke dalamnya.

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