Python json bỏ trích dẫn

JSON [JavaScript Object Notation] là gì?

JSON [Ký hiệu đối tượng JavaScript] là một định dạng [định dạng] dữ liệu bắt nguồn từ ngôn ngữ Javascript. Dữ liệu trong JSON chủ yếu là văn bản, được lưu trữ theo cặp thuộc tính [attribute] – value [giá trị]. JSON thường được sử dụng trong các trường hợp

  • phát triển web. truyền gửi dữ liệu từ máy chủ đến máy khách và ngược lại

  • Các tập tin cấu hình [configuration files]. JSON có thể được sử dụng để lưu trữ các cấu hình [configurations] và cài đặt [settings] trong các ứng dụng. Ví dụ như tập tin settings.json trong

  • Hoặc đơn giản là sử dụng JSON để lưu trữ dữ liệu

Bên dưới là tệp ví dụ info.json lưu trữ dữ liệu về thông tin của trang web gochocit. com

info.json
{ 
    "domainname": "gochocit.com",
    "active": true,
    "numberposts": 360,
    "category": ["hardware", "software", "network"],
    "facebookpage": "//www.facebook.com/gochocit/",
    "build": {
        "language": "php",
        "cms": "wordpress",
        "database": "mysql"
    }
}

Các lưu ý chính về định dạng JSON là

  • JSON bao gồm một chuỗi các cặp khóa – giá trị [có thể gọi là thuộc tính – giá trị]. And they are bao quanh bởi dấu ngắt {}
  • Mỗi cặp khóa – giá trị có định dạng "key": . Giá trị có thể là bất kỳ loại dữ liệu nào như đối tượng, danh sách, chuỗi, số, boolean, null,…
  • Các cặp khóa – giá trị được đặt cách nhau bởi dấu phẩy ,. Only cặp key – value cuối cùng thì không có dấu phẩy , phía sau

Lưu ý. Chúng ta nên sử dụng để làm cho JSON rõ ràng, dễ đọc hơn

2. Đọc [read] file JSON với module json trong Python

Python build sẵn module json để làm việc với JSON. Chúng ta cần

import json

with open['info.json', 'r'] as f:
  data = json.load[f]

print[type[data]]
print[data]
0 để sử dụng mô-đun này. Nhưng trước hết, chúng ta cần mở [open] và đọc [read] tệp JSON để đọc dữ liệu JSON từ tệp với hàm
import json

with open['info.json', 'r'] as f:
  data = json.load[f]

print[type[data]]
print[data]
1

import json

with open['info.json', 'r'] as f:
  data = json.load[f]

print[type[data]]
print[data]
Kết quả

{'domainname': 'gochocit.com', 'active': True, 'numberposts': 360, 'category': ['hardware', 'software', 'network'], 'facebookpage': '//www.facebook.com/gochocit/', 'build': {'language': 'php', 'cms': 'wordpress', 'database': 'mysql'}}

Hàm

import json

with open['info.json', 'r'] as f:
  data = json.load[f]

print[type[data]]
print[data]
1 sẽ phân tích dữ liệu JSON và trả về một từ điển để xử lý với Python. Lúc này, chúng ta có thể dễ dàng truy cập giá trị của các cặp khóa – giá trị trong dữ liệu JSON

import json

with open['info.json', 'r'] as f:
  data = json.load[f]

# access value of key-value
print[data["domainname"]]
print[data["active"]]
print[data["numberposts"]]
print[data["category"]]
print[data["facebookpage"]]
print[data["build"]]

category = data["category"]
build = data["build"]
print["type of category:", type[category]]
print["type of build:", type[build]]
Kết quả
gochocit.com
True
360
['hardware', 'software', 'network']
//www.facebook.com/gochocit/
{'language': 'php', 'cms': 'wordpress', 'database': 'mysql'}
type of category: 
type of build: 

Nếu các bạn đang có một chuỗi JSON thì cần sử dụng hàm

import json

with open['info.json', 'r'] as f:
  data = json.load[f]

print[type[data]]
print[data]
3 để convert sang dictionary trong Python

import json

data_string = """
{
    "domainname": "gochocit.com",
    "active": true,
    "numberposts": 360,
    "category": ["hardware", "software", "network"],
    "facebookpage": "//www.facebook.com/gochocit/",
    "build": {
        "language": "php",
        "cms": "wordpress",
        "database": "mysql"
    }
}
"""
#convert json string to dictionary
data = json.loads[data_string]

# access value of key-value
print[data["domainname"]]
print[data["active"]]
print[data["numberposts"]]
print[data["category"]]
print[data["facebookpage"]]
print[data["build"]]

category = data["category"]
build = data["build"]
print["type of category:", type[category]]
print["type of build:", type[build]]
Kết quả
gochocit.com
True
360 
['hardware', 'software', 'network']
//www.facebook.com/gochocit/
{'language': 'php', 'cms': 'wordpress', 'database': 'mysql'}
type of category: 
type of build: 

Khi chuyển đổi [convert] từ chuỗi JSON sang từ điển trong Python, chúng ta sẽ có kiểu dữ liệu của giá trị trong JSON sẽ được chuyển đổi thành kiểu dữ liệu tương ứng trong Python. Bảng bên dưới tóm tắt kiểu dữ liệu của giá trị trong JSON sẽ được chuyển thành kiểu dữ liệu tương ứng trong Python

Chủ Đề