Hướng dẫn dùng json convert python

Python JSON là gì?

Nội dung chính

  • JSON trong python
  • Cách chuyển đổi dữ liệu từ JSON tới Python
  • Kết quả :
  • Cách chuyển đổi dữ liệu từ Python tới JSON
  • Kết quả :
  • Giới thiệu về JSON
  • Ví dụ về Import JSON, khai báo, đọc và in dữ liệu JSON bằng Python
  • Ví dụ về ghi dữ liệu JSON trong Python
  • Ví dụ về Phương thức sắp xếp JSON trong Python
  • Chúc mừng bạn biết thêm về cách thao tác với JSON trong Python

JSON là viết tắt của JavaScript Object Notation, nó là một kiểu dữ liệu thường được dùng để trao đổi dữ liệu trên nền web. JSON có cấu trúc, định dạng đơn giản, dễ sử dụng hơn XML.

JSON là ngôn ngữ độc lập, có định dạng ở dạng văn bản.

JSON được tạo bởi dấu ngoặc nhọn {}

JSON bao gồm các cặp key, value.

Ví dụ

# kiểu dữ liệu json
x =  '{"name":"Hoang Van Luu", "age":37, "city":"Bac Giang"}'

JSON trong python

Python có tích hợp gói json để làm việc với dữ liệu json.

Để sử dụng gói json trong python bạn cần phải import module:  json

Cách chuyển đổi dữ liệu từ JSON tới Python

Nếu bạn có một kiễu dữ liệu dạng chuỗi JSON.Để chuyển đổi dữ liệu từ JSON tới Python sử dụng phương thức :  json.loads()

Ví dụ Convert JSON to Python:

Ví dụ

import json

# x is JSON data:
x =  '{"name":"Hoang Van Luu", "age":37, "city":"Bac Giang"}'

# Convert json to python data:
y = json.loads(x)

# the result is a Python dictionary:
print(y) 
# Get name value
print("name is : ", y["name"])

Kết quả :

{'name': 'Hoang Van Luu', 'age': 37, 'city': 'Bac Giang'}
name is :  Hoang Van Luu

Cách chuyển đổi dữ liệu từ Python tới JSON

Nếu bạn có một dữ liệu ở dạng đối tượng Python. Để chuyển đổi dữ liệu từ Python tới JSON sử dụng phương thức :  json.dumps()

Ví dụ Convert from Python to JSON:

Ví dụ

import json

# Kiểu dữ liệu dictionary của Python:
x_dict =  {"name":"Hoang Van Luu", "age":37, "city":"Bac Giang"}

# Convert Object Python to Json data:
y_json = json.dumps(x_dict)

# the result is a Json data:
print(y_json) 

Kết quả :

{"name": "Hoang Van Luu", "age": 37, "city": "Bac Giang"}

Giới thiệu về JSON

JSON (JavaScript Object Notation): Là một định dạng dữ liệu rất phổ biến, được dùng để lưu trữ và thể hiện các dữ liệu có  cấu trúc.

JSON là định dạng dữ liệu phổ biến được sử dụng để truyền và nhận dữ liệu giữa ứng dụng web và web server.

Python cho phép thao tác với JSON dưới dạng chuỗi hoặc lưu đối tượng JSON vào trong file.

Hướng dẫn dùng json convert python

Hướng dẫn Lập trình với JSON trong Python


Ví dụ về Import JSON, khai báo, đọc và in dữ liệu JSON bằng Python

Để có thể làm việc với JSON, ta cần import module json. Ta cần import module trước khi gọi các hàm để thao tác với json.

Để có thể parse một JSON string, ta gọi method json.loads(). Phương thức này sẽ trả về một đối tượng dictionary chứa dữ liệu được chứa trong JSON string.

Ví dụ:

Trong ví dụ này, ta đã khai báo một string có chứa dữ liệu JSON, rồi gọi method loads() để xử lý chuỗi này.

Phương thức loads() sẽ trả về một đối tượng dictionary chứa toàn bộ dữ liệu json.

Sau đó ta in ra toàn bộ dữ liệu trong dictionary, rồi in ra value của key là ‘durian’.

import json

# Khai báo một JSON string

listfruits = '{"orange":"Qua cam", "strawberry":"Day tay", '\

'"grape":"Nho", "durian":"Sau rieng"}'

# Đọc JSON String, method này trả về một Dictionary

mylist = json.loads(listfruits)

# In ra thông tin của Dictionary

print(mylist)

# In ra một giá trị trong Dictionary

print(mylist['durian'])
 

Kết quả được hiển thị như trong hình bên dưới:

Khởi tạo dữ liệu JSON trong Python

Ví dụ về ghi dữ liệu JSON trong Python

Để đọc một file có chứa JSON object, ta gọi method json.load().

Để chuyển đổi từ một dictionary thành một JSON string, ta gọi method json.dumps().

Để ghi dữ liệu JSON ra file trong Python, ta sử  dụng method json.dump().

Ví dụ:

Trong ví dụ này, ta đã khai báo một chuỗi chứa dữ liệu JSON.

Tiếp theo ta tạo và mở file có tên là coffee.txt. Sau đó ta gọi phương thức dump() để ghi dữ liệu json vào file.

# Khai báo JSON String

coffees = "{"capuchino":"Cafe Italian",

"expresso": ["Matcha""Mocha"],

"VietNam"True,

"latte"32

}"

# Ghi dữ liệu vào file coffee.txt

with open('coffee.txt''w'as myfile:

json.dump(coffeesmyfile)

print('Ghi file thanh cong !')
 

Kết quả được hiển thị như hình bên dưới:

Ghi dữ liệu vào file JSON

Sau khi thực thi thành công chương trình, ta có thể thấy file coffee.txt đã được tạo ra trong project như hình sau:

Ghi dữ liệu vào file JSON - Tạo file coffee.txt

 

Để kiểm tra, ta mở file và thấy dữ liệu đã được ghi vào file thành công đúng như mong muốn:

Ghi dữ liệu vào file JSON - Dữ liệu ghi trong file coffee.txt

Ví dụ về Phương thức sắp xếp JSON trong Python

Phương thức json.dumps() cung cấp các tham số để cho phép định dạng kết quả (thụt lề) hoặc sắp xếp kết quả xử lý.

Ví dụ:

Trong ví dụ dưới đây, ta khai báo một string json gồm các loại trái cây.

Sau đó, ta gọi method dumps() để xử lý string json ở trên.

Đồng thời ta đã truyền 2 tham số cho method này, để cho phép thụt lề kết quả vào 4 ký tự, và sắp xếp kết quả theo thứ tự aphabet của key.

# Khai báo JSON String

danhsachhoaqua = "{

"mango":"Qua xoai",

"strawberry":"Dau tay",

"avocado":"Qua bo",

"durian":"Sau rieng",

"orange":"Qua cam",

"lemon":"Dua hau",

"coconut":"Qua dua",

}"

# Xử lý và sắp xếp kết quả của JSON String theo key

print(json.dump(danhsachhoaquaindent=4sort_keys=True))
 

Kết quả được hiển thị đúng như ta mong  muốn. Các phần tử đã được sắp xếp lại theo key như hình bên dưới.

Sắp xếp dữ liệu trong JSON

Chúc mừng bạn biết thêm về cách thao tác với JSON trong Python

Như vậy là bạn đã biết một số thao tác cơ bản với JSON trong Python. Hãy luyện tập lại các ví dụ, đảm bảo rằng bạn hiểu rõ rồi mới sang bài tiếp theo nhé.> Hoặc tham gia ngay KHÓA HỌC PYTHON để có kiến thức đầy đủ, bài bản hơn.

TONY HÙNG CƯỜNG