Dạng đầy đủ của JSON là JavaScript Object Notation. Nó có nghĩa là một tệp script (thực thi) được tạo bằng văn bản bằng ngôn ngữ lập trình, được sử dụng để lưu trữ và truyền dữ liệu. Python hỗ trợ JSON thông qua một gói tích hợp có tên là json. Để sử dụng tính năng này, chúng ta import gói json trong tập lệnh Python. Văn bản trong JSON được thực hiện thông qua chuỗi được trích dẫn chứa các giá trị trong ánh xạ từ khóa-giá trị bên trong {}.
Nội dung chính
1. Đọc từ JSON
Khá dễ dàng để tải một đối tượng JSON bằng Python. Python có một gói tích hợp được gọi là json, có thể được sử dụng để làm việc với dữ liệu JSON. Nó được thực hiện bằng cách sử dụng mô-đun json, mô-đun này cung cấp cho chúng ta rất nhiều phương thức trong số các phương thức load() và load() sẽ giúp chúng tađọc tệp JSON.
2. Chuyển đổi JSON
Deserialization của JSON có nghĩa là chuyển đổi các đối tượng JSON thành các đối tượng Python tương ứng của chúng. Phương thức load () / loading () được sử dụng cho nó. Nếu bạn đã sử dụng dữ liệu JSON từ một chương trình khác hoặc lấy dưới dạng định dạng chuỗi của JSON, thì nó có thể dễ dàng được giải mã bằng load () / loading (), thường được sử dụng để tải từ chuỗi, nếu không thì đối tượng gốc nằm trong danh sách hoặc lệnh nào đó.
Xem bảng sau được đưa ra dưới đây.
JSON OBJECT | PYTHON OBJECT |
object | dict |
array | list |
string | str |
null | None |
number (int) | int |
number (real) | float |
true | True |
false | False |
json.load (): json.load () chấp nhận đối tượng tệp, phân tích cú pháp dữ liệu JSON, điền vào dictionary của Python với dữ liệu và trả lại cho bạn.
Cú pháp:
json.load(file object)
Ví dụ: Giả sử tệp JSON trông giống như sau:
{
"eBooks":[
{
"language":"Pascal",
"edition":"third"
},
{
"language":"Python",
"edition":"four"
},
{
"language":"SQL",
"edition":"second"
}
]
}
Chúng tôi muốn đọc nội dung của tập tin này. Dưới đây là cách thực hiện.
# Python program to read
# json file
import json
# Opening JSON file
f = open('data.json',)
# returns JSON object as
# a dictionary
data = json.load(f)
# Iterating through the json
# list
for i in data['eBooks']:
print(i)
# Closing file
f.close()
Kq:
{
"language":"Pascal",
"edition":"third"
},
{
"language":"Python",
"edition":"four"
},
{
"language":"SQL",
"edition":"second"
}
json.loads(): Nếu bạn có một chuỗi JSON, bạn có thể phân tích cú pháp nó bằng cách sử dụng phương thức json.loads ().json.loads () không lấy đường dẫn tệp, nhưng nội dung tệp dưới dạng một chuỗi, sử dụng fileobject. read () với json.loads () chúng ta có thể trả về nội dung của tệp.
Cú pháp
json.loads(jsonstring) #for Json string
json.loads(fileobject.read()) #for fileobject
Ví dụ: Exmaple này hiển thị việc đọc từ cả chuỗi và tệp JSON. Tệp được hiển thị ở trên đã được sử dụng.
# Python program to read
# json file
import json
# JSON string
a = '{"name": "Bob", "languages": "English"}'
# deserializes into dict
# and returns dict.
y = json.loads(a)
print("JSON string = ", y)
print()
# JSON file
f = open ('data.json', "r")
# Reading from file
data = json.loads(f.read())
# Iterating through the json
# list
for i in data['eBooks']:
print(i)
# Closing file
f.close()
output
JSON string = {"name": "Bob", "languages": "English"}
{
"language":"Pascal",
"edition":"third"
},
{
"language":"Python",
"edition":"four"
},
{
"language":"SQL",
"edition":"second"
}
Cài ứng dụng cafedev để dễ dàng cập nhật tin và học lập trình mọi lúc mọi nơi tại đây.
Nguồn và Tài liệu tiếng anh tham khảo:
Tài liệu từ cafedev:
- Full series tự học Python từ cơ bản tới nâng cao tại đây nha.
- Tự học ML bằng Python từ cơ bản tới nâng cao.
- Các nguồn kiến thức MIỄN PHÍ VÔ GIÁ từ cafedev tại đây
Nếu bạn thấy hay và hữu ích, bạn có thể tham gia các kênh sau của cafedev để nhận được nhiều hơn nữa:
Chào thân ái và quyết thắng!