JSON Python

JSON là ngữ pháp để lưu trữ và trao đổi dữ liệu.

JSON là văn bản được viết bằng định dạng đối tượng JavaScript (JavaScript object notation).

JSON trong Python

Python có một mô-đun tên là json gói tích hợp sẵn của Python, có thể được sử dụng để xử lý dữ liệu JSON.

Ví dụ

Đưa vào json Mô-đun:

import json

Phân tích JSON - Chuyển đổi JSON thành Python

Nếu có chuỗi JSON, bạn có thể sử dụng json.loads() método để phân tích.

Kết quả sẽ là từ điển Python.

Ví dụ

Chuyển đổi JSON thành Python:

import json
# Một số JSON:
x =  '{ "name":"Bill", "age":63, "city":"Seatle"}'
# Phân tích x:
y = json.loads(x)
# Kết quả là từ điển Python:
print(y["tuổi"])

Chạy Ví Dụ

Chuyển đổi Python thành JSON

Nếu có đối tượng Python, bạn có thể sử dụng json.dumps() método để chuyển đổi thành chuỗi JSON.

Ví dụ

Chuyển đổi Python thành JSON:

import json
# Đối tượng Python (danh sách):
x = {
  "tên": "Bill"
  "tuổi": 63
  "thành phố": "Seatle"
}
# Chuyển đổi thành JSON:
y = json.dumps(x)
# Kết quả là chuỗi JSON:
print(y)

Chạy Ví Dụ

Bạn có thể chuyển đổi các loại đối tượng Python sau thành chuỗi JSON:

  • dict
  • list
  • tuple
  • chuỗi
  • int
  • float
  • True
  • False
  • None

Ví dụ

Chuyển đổi đối tượng Python thành chuỗi JSON và in giá trị:

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))

Chạy Ví Dụ

Khi Python chuyển đổi thành JSON, đối tượng Python sẽ được chuyển đổi thành phần tương đương JSON (JavaScript):

Python JSON
dict Đối tượng
list Mảng
tuple Mảng
str Chuỗi
int Số
float Số
True true
False false
None null

Ví dụ

Chuyển đổi đối tượng Python chứa tất cả các loại dữ liệu hợp lệ:

import json
x = {
  "tên": "Bill"
  "tuổi": 63
  "已婚": 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))

Chạy Ví Dụ

Định dạng kết quả

Ví dụ trên in một chuỗi JSON, nhưng nó không dễ đọc, không có lề và dòng.

json.dumps() Phương thức cung cấp tham số để làm cho kết quả dễ đọc hơn:

Ví dụ

Sử dụng indent Tham số để xác định số lượng lề:

json.dumps(x, indent=4)

Chạy Ví Dụ

Bạn cũng có thể định nghĩa ký tự phân隔, giá trị mặc định là (", ", ": "),nghĩa là sử dụng dấu phẩy và khoảng trống để phân隔 mỗi đối tượng, sử dụng dấu hai chấm và khoảng trống để phân隔 khóa và giá trị:

Ví dụ

Sử dụng separators Tham số để thay đổi ký tự phân隔 mặc định:

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

Chạy Ví Dụ

Sắp xếp kết quả

json.dumps() Phương thức cung cấp tham số để sắp xếp các khóa trong kết quả:

Ví dụ

Sử dụng sort_keys Tham số để xác định liệu có nên sắp xếp kết quả hay không:

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

Chạy Ví Dụ