JSON trong Python

Bởi Kiên Smart Data
0 Nhận xét

Ở bài này ta sẽ tìm hiểu về JSON trong python. JSON là một cú pháp để lưu trữ và trao đổi dữ liệu. JSON là văn bản, được viết bằng ký hiệu đối tượng JavaScript.

JSON trong Python

Python có một gói tích hợp có tên là json, có thể được sử dụng để làm việc với dữ liệu JSON.

Ví dụ: Nhập module json:

import json

Chuyển đổi từ JSON sang Python

Nếu bạn có một chuỗi JSON, bạn có thể phân tích nó bằng cách sử dụng phương thức json.loads(). Kết quả sẽ là một dictionary Python .

Ví dụ: Chuyển đổi từ JSON sang 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"]) 

Chuyển đổi từ Python sang JSON

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

Ví dụ: Chuyển đổi từ Python sang 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) 

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

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

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

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

Khi bạn chuyển đổi từ Python sang JSON, các đối tượng Python sẽ được chuyển đổi thành JSON (JavaScript) tương đương:

PythonJSON
dictObject
listArray
tupleArray
strString
intNumber
floatNumber
TRUETRUE
FALSEFALSE
Nonenull

Ví dụ: Chuyển đổi một đối tượng Python chứa tất cả các kiểu dữ liệu hợp pháp:

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

Định dạng kết quả

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

Phương thức json.dumps() có các tham số để dễ đọc kết quả hơn:

Ví dụ: Sử dụng tham số indent để xác định số lượng thụt lề:

json.dumps(x, indent=4)

Bạn cũng có thể xác định các dấu phân cách, giá trị mặc định là (“, “, “: “), nghĩa là sử dụng dấu phẩy và dấu cách để phân tách từng đối tượng, dấu hai chấm và dấu cách để phân tách khóa khỏi giá trị:

Ví dụ: Sử dụng tham số separators để thay đổi dấu phân cách mặc định:

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

Sắp xếp kết quả

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

Ví dụ: Sử dụng sort_keystham số để xác định xem kết quả có nên được sắp xếp hay không:

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

Nếu bạn là newbie có thể tham khảo bài viết này để tìm hiểu lộ trình học DA trong 3 tháng của SmartData.

Nếu bạn thấy bài viết hay và hữu ích, bạn có thể tham gia các kênh sau của SmartData để nhận được nhiều hơn nữa:

Bài viết liên quan

Để lại nhận xét

Copyright @2022 – Bản quyền thuộc Học viện dữ lệu Smart Data