Mục lục

Không có mục lục
Tham gia kênh Telegram của CloudFly để nhận thêm ưu đãi và không bỏ lỡ bất kỳ khuyến mãi nào từ CloudFly

Cách hiển thị JSON đẹp trong Python

Ngày đăng: 17 tháng 7 năm 2025

Python

1. Hiển thị Chuỗi JSON đẹp trong Python

Chúng ta có thể sử dụng phương thức dumps() để nhận chuỗi JSON được định dạng đẹp.

import json

json_data = '[{"ID":10,"Name":"Pankaj","Role":"CEO"},'{"ID":20,"Name":"David Lee","Role":"Editor"}]'

json_object = json.loads(json_data)

json_formatted_str = json.dumps(json_object, indent=2)

print(json_formatted_str)

Kết quả hiển thị ra JSON được định dạng:

[
  {
    "ID": 10,
    "Name": "Pankaj",
    "Role": "CEO"
  },
  {
    "ID": 20,
    "Name": "David Lee",
    "Role": "Editor"
  }
]
  • Đầu tiên, chúng ta dùng json.loads() để tạo đối tượng JSON từ chuỗi JSON.
  • Phương thức json.dumps() nhận đối tượng JSON và trả về chuỗi JSON được định dạng. Tham số indent xác định mức độ thụt lề cho chuỗi định dạng.

2. Hiển thị File JSON đẹp trong Python

Hãy xem điều gì xảy ra khi chúng ta hiển thị dữ liệu từ file JSON. Dữ liệu trong file được lưu dưới dạng in đẹp.

Json Pretty Printed File

import json

with open('Cars.json', 'r') as json_file:
    json_object = json.load(json_file)

print(json_object)

print(json.dumps(json_object))

print(json.dumps(json_object, indent=1))

Kết quả:

[{'Car Name': 'Honda City', 'Car Model': 'City', 'Car Maker': 'Honda', 'Car Price': '20,000 USD'}, {'Car Name': 'Bugatti Chiron', 'Car Model': 'Chiron', 'Car Maker': 'Bugatti', 'Car Price': '3 Million USD'}]
[{"Car Name": "Honda City", "Car Model": "City", "Car Maker": "Honda", "Car Price": "20,000 USD"}, {"Car Name": "Bugatti Chiron", "Car Model": "Chiron", "Car Maker": "Bugatti", "Car Price": "3 Million USD"}]
[
 {
  "Car Name": "Honda City",
  "Car Model": "City",
  "Car Maker": "Honda",
  "Car Price": "20,000 USD"
 },
 {
  "Car Name": "Bugatti Chiron",
  "Car Model": "Chiron",
  "Car Maker": "Bugatti",
  "Car Price": "3 Million USD"
 }
]

Rõ ràng từ kết quả là chúng ta phải truyền giá trị indent để có dữ liệu JSON ở định dạng in đẹp.

Gỡ Lỗi Phản Hồi API

Khi bạn gửi yêu cầu API, thường nhận được một chuỗi JSON dài trên một dòng để tiết kiệm băng thông. Điều này khó đọc và hiểu, đặc biệt với dữ liệu phức tạp hoặc lồng nhau sâu. In đẹp biến chuỗi không đọc được đó thành định dạng có cấu trúc, thụt lề rõ ràng và dễ đọc.

Ví dụ sử dụng API JSONPlaceholder:

import requests
import json

url = "https://jsonplaceholder.typicode.com/posts/1"
response = requests.get(url)

if response.status_code == 200:
    data = response.json()
    print(json.dumps(data))
    print(json.dumps(data, indent=2))
else:
    print(f"Error: {response.status_code}")

Kết quả:

{"userId": 1, "id": 1, "title": "sunt aut facere repellat provident occaecati excepturi", "body": "quia et suscipit\nsuscipit recusandae..."}

{
  "userId": 1,
  "id": 1,
  "title": "sunt aut facere repellat provident occaecati excepturi",
  "body": "quia et suscipit\nsuscipit recusandae..."
}

Ghi Nhận Dữ Liệu Có Cấu Trúc

Ghi nhận dữ liệu JSON phức tạp dưới dạng in đẹp giúp dễ đọc hơn đặc biệt khi kiểm tra nhật ký thủ công hoặc dùng công cụ đơn giản.

Cải Thiện Khả Năng Đọc Các File Cấu Hình

In đẹp các file cấu hình JSON giúp dễ dàng xem xét thủ công, tạo sự khác biệt rõ ràng trong quản lý phiên bản và nhanh chóng hiểu cấu trúc.

Câu Hỏi Thường Gặp

1. Cách tốt nhất để thụt lề JSON trong Python là gì?

Sử dụng tham số indent trong json.dumps().

2. Sự khác nhau giữa json.dumpspprint?

json.dumps định dạng chuỗi JSON. pprint in đẹp cấu trúc dữ liệu Python.

3. Công cụ tự động in đẹp?

  • Terminal: python -m json.tool input.json
  • Công cụ jq: jq . input.json
  • Plugin cho trình soạn thảo

Kết Luận

In đẹp JSON giúp cải thiện khả năng đọc và gỡ lỗi. Hai công cụ json.dumps()pprint trong Python cung cấp cách dễ dàng định dạng dữ liệu JSON.

Tham Khảo

Tham gia kênh Telegram của CloudFly để nhận thêm ưu đãi và không bỏ lỡ bất kỳ khuyến mãi nào từ CloudFly
Chia sẻ

0 câu trả lời