JSON Python

JSON adalah sintaks yang digunakan untuk menyimpan dan menghantarkan data.

JSON ditulis dalam bentuk teks yang digunakan untuk mewakili objek JavaScript (JavaScript object notation).

JSON di Python

Python mempunyai modul yang bernama json paket bawaan, boleh digunakan untuk mengurus data JSON.

Contoh

Import json Modul:

import json

Parsa JSON - Tukar JSON kepada Python

Jika ada string JSON, boleh digunakan json.loads() 方法对其进行解析。

结果将是 Python 字典。

Contoh

把 JSON 转换为 Python:

import json
# 一些 JSON:
x =  '{ "name":"Bill", "umur":63, "kota":"Seatle"}'
# 解析 x:
y = json.loads(x)
# 结果是 Python 字典:
print(y["umur"])

Jalankan Contoh

把 Python 转换为 JSON

若有 Python 对象,则可以使用 json.dumps() 方法将其转换为 JSON 字符串。

Contoh

把 Python 转换为 JSON:

import json
# Python 对象(字典):
x = {
  "nama": "Bill",
  "umur": 63,
  "kota": "Seatle"
}
# 转换为 JSON:
y = json.dumps(x)
# 结果是 JSON 字符串:
print(y)

Jalankan Contoh

您可以把以下类型的 Python 对象转换为 JSON 字符串:

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

Contoh

将 Python 对象转换为 JSON 字符串,并打印值:

import json
print(json.dumps({"name": "Bill", "age": 63}))
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))

Jalankan Contoh

当 Python 转换为 JSON 时,Python 对象会被转换为 JSON(JavaScript)等效项:

Python JSON
dict Object
list Array
tuple Array
str String
int Number
float Number
True true
False false
None null

Contoh

转换包含所有合法数据类型的 Python 对象:

import json
x = {
  "nama": "Bill",
  "umur": 63,
  "isteri": True,
  "divorced": False,
  "children": ("Jennifer","Rory","Phoebe"),
  "pets": None,
  "cars": [
    {"model": "Porsche", "mpg": 38.2},
    {"model": "BMW M5", "mpg": 26.9}
  }
}
print(json.dumps(x))

Jalankan Contoh

Formatkan hasil

Contoh di atas mencetak string JSON, tetapi bukan mudah dibaca, tanpa indentasi dan paragraf.

json.dumps() Method menyediakan parameter untuk membuat hasil lebih mudah dibaca:

Contoh

Gunakan indent Parameter untuk menentukan bilangan indentasi:

json.dumps(x, indent=4)

Jalankan Contoh

Anda juga dapat menentukan penanda pemisah, nilai baku adalah (", ", ": "), yang berarti memisahkan setiap objek dengan koma dan spasi, memisahkan kunci dan nilai dengan tanda titik dan spasi:

Contoh

Gunakan separators Parameter untuk mengubah penanda pemisah baku:

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

Jalankan Contoh

Urutkan hasil

json.dumps() Method menyediakan parameter untuk mengurutkan kunci di dalam hasil:

Contoh

Gunakan sort_keys Parameter untuk menentukan apakah hasil harus diurutkan:

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

Jalankan Contoh