JSON Pada Python

JSON adalah sintaks untuk menyimpan dan bertukar data.

JSON adalah teks, ditulis dengan notasi objek JavaScript.

JSON dengan Python

Python memiliki paket built-in yang disebut json, yang dapat digunakan untuk bekerja dengan data JSON.

Contoh

Impor modul json:

import json

Parse JSON – Mengubah dari JSON ke Python

Jika kamu memiliki string JSON, kamu dapat menguraikannya dengan menggunakan metode json.loads()ini.

Hasilnya akan menjadi kamus di Python .

Contoh

Menngubah dari JSON ke Python:

import json
 
# some JSON:
x =  '{ "name":"John", "age":30, "city":"New York"}'
 
# parse x:
y = json.loads(x)
 
# the result is a Python dictionary:
print(y["age"])

Mengubah dari Python ke JSON

Jika kamu memiliki objek Python, kamu bisa mengubahnya menjadi string JSON dengan menggunakan metode json.dumps()ini.

Contoh

Mengubah dari Python ke JSON:

import json
 
# a Python object (dict):
x = {
  "name": "John",
  "age": 30,
  "city": "New York"
}
 
# convert into JSON:
y = json.dumps(x)
 
# the result is a JSON string:
print(y)

Kamu bisa mengubah objek Python dari tipe berikut, menjadi string JSON:

  • dict
  • list
  • tuple
  • string
  • int
  • float
  • True
  • False
  • None

Contoh

Mengubah objek Python menjadi string JSON, dan cetak nilainya:

import json
 
print(json.dumps({"name": "John", "age": 30}))
print(json.dumps(["apple", "bananas"]))
print(json.dumps(("apple", "bananas")))
print(json.dumps("hello"))
print(json.dumps(42))
print(json.dumps(31.76))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))

Saat kamu mengubah dari Python ke JSON, objek Python diubah menjadi JSON (JavaScript):

PythonJSON
DictObject
ListArray
TupleArray
StrString
IntNumber
FloatNumber
Truetrue
Falsefalse
Nonenull

Contoh

Mengubah objek Python yang berisi semua tipe data legal:

import json
 
x = {
  "name": "John",
  "age": 30,
  "married": True,
  "divorced": False,
  "children": ("Ann","Billy"),
  "pets": None,
  "cars": [
    {"model": "BMW 230", "mpg": 27.5},
    {"model": "Ford Edge", "mpg": 24.1}
  ]
}
 
print(json.dumps(x))

Hasil Format

Contoh di atas membuat string JSON, tetapi tidak mudah dibaca, tanpa indentansi dan jeda baris.

Metode json.dumps()memiliki parameter untuk membuatnya lebih mudah untuk membaca hasilnya:

Contoh

Gunakan parameter indentuntuk menentukan jumlah indentasi:

json.dumps(x, indent=4)

Kamu juga dapat mendefinisikan pemisah, nilai default adalah (“,”, “:”), yang berarti menggunakan koma dan spasi untuk memisahkan setiap objek, dan titik dua serta ruang untuk memisahkan kunci dari nilai:

Contoh

Gunakan parameter separatorsuntuk mengubah pemisah default:

json.dumps(x, indent=4, separators=(". ", " = "))

Hasil Order

Metode json.dumps()memiliki parameter untuk memesan kunci dalam hasil:

Contoh

Gunakan parameter sort_keysuntuk menentukan apakah hasilnya harus diurutkan atau tidak:

json.dumps(x, indent=4, sort_keys=True)