Làm cách nào để tải dữ liệu JSON vào từ điển Python?

JSON là viết tắt của Ký hiệu đối tượng Javascript trong đó dữ liệu được lưu trữ ở định dạng đối tượng, chẳng hạn như {x. 12, năm. 24,z. 36}. Dữ liệu được lưu trữ bên trong tệp JSON ở định dạng ánh xạ khóa tương tự như từ điển trong python. Hướng dẫn này thảo luận về cách chuyển đổi chuỗi json thành từ điển trong python

CHUỖI JSON ĐẾN TỪ ĐIỂN

Python có thư viện json tích hợp có hàm load[]. Hàm tải lấy một đối tượng json làm đầu vào và chuyển đổi nó thành từ điển

Trước hết, nhập thư viện json. rồi truyền đối tượng json vào hàm load

import json

jsonData = '{"firstName": "Edward", "lastName": "John"}'

dictData= json.loads[jsonData]

print[dictData]

print[dictData['firstName']]

print[dictData['lastName']]

{'firstName': 'Edward', 'lastName': 'John'}
Edward
John

Tương tự, bạn cũng có thể tải tệp JSON và chuyển đổi dữ liệu được lưu trữ trong đó sang định dạng từ điển. Để tải tệp JSON, cú pháp như sau

json.load[file_name]

Trong ví dụ sau, chúng tôi sẽ chuyển đổi tệp JSON thành từ điển

# importing the module
import json
 
# Opening JSON file
with open['data.json'] as json_file:
    data = json.load[json_file]
    # Print the type of data variable
    print["Type:", type[data]]
 
    # Print the data of dictionary
    print["\nData:", data['Info']]

Type 
Data: [{'Name' : 'John', 'Roll No.' : '123456', 'University' : 'XYZ' },{'Name' : 'Jasmine' ,'Roll No.' : '4321','University' : 'MNG' }]

ĐỐI TƯỢNG LIÊN KẾT JSON VÀO TỪ ĐIỂN

Trong các ứng dụng trong thế giới thực, hầu hết dữ liệu bao gồm các đối tượng lồng nhau. Chuỗi JSON bao gồm đối tượng JSON được lồng trong một đối tượng khác bao gồm dữ liệu ở dạng tên. cặp giá trị. Đoạn mã bên dưới phân tích cú pháp đối tượng JSON lồng nhau thành Từ điển

import json

jsonData = '{"firstName": "Edward", "lastName": "John", "coursesMarks":{"English":20,"Science":45, "Maths": 48}}'

dictData= json.loads[jsonData]

print[dictData]

print[dictData['coursesMarks']]

print[type[dictData]]

{'firstName': 'Edward', 'lastName': 'John', 'coursesMarks': {'English': 20, 'Science': 45, 'Maths': 48}}
{'English': 20, 'Science': 45, 'Maths': 48}

Kiểu dữ liệu của đối tượng được chuyển đổi này là từ điển. Bằng cách này, bạn có thể chuyển đổi một đối tượng đơn giản hoặc các đối tượng JSON lồng nhau thành một từ điển python. Để biết thêm hướng dẫn, hãy cho chúng tôi biết trong phần bình luận

JSON [Ký hiệu đối tượng JavaScript] là một định dạng dữ liệu phổ biến được sử dụng để biểu diễn dữ liệu có cấu trúc. Việc truyền và nhận dữ liệu giữa máy chủ và ứng dụng web ở định dạng JSON là phổ biến

Trong Python, JSON tồn tại dưới dạng một chuỗi. Ví dụ

p = '{"name": "Bob", "languages": ["Python", "Java"]}'

Nó cũng phổ biến để lưu trữ một đối tượng JSON trong một tệp

Nhập Mô-đun json

Để làm việc với JSON [chuỗi hoặc tệp chứa đối tượng JSON], bạn có thể sử dụng mô-đun

import json
0 của Python. Bạn cần nhập mô-đun trước khi có thể sử dụng nó

________số 8_______

Phân tích cú pháp JSON bằng Python

Mô-đun

import json
0 giúp dễ dàng phân tích chuỗi JSON và tệp chứa đối tượng JSON

ví dụ 1. Python JSON để đọc chính tả

Bạn có thể phân tích một chuỗi JSON bằng phương pháp

import json
2. Phương thức trả về một từ điển

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]

Ở đây, person là một chuỗi JSON và person_dict là một từ điển

ví dụ 2. Python đọc tệp JSON

Bạn có thể sử dụng phương thức

import json
3 để đọc tệp chứa đối tượng JSON

Giả sử, bạn có một tệp tên là

import json
4 chứa một đối tượng JSON


{"name": "Bob", 
"languages": ["English", "French"]
}

Đây là cách bạn có thể phân tích cú pháp tệp này


import json

with open['path_to_file/person.json', 'r'] as f:
  data = json.load[f]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[data]

Ở đây, chúng tôi đã sử dụng chức năng

import json
5 để đọc tệp json. Sau đó, tệp được phân tích cú pháp bằng phương pháp
import json
3 cung cấp cho chúng tôi một từ điển có tên dữ liệu

Nếu bạn không biết cách đọc và ghi tệp bằng Python, chúng tôi khuyên bạn nên kiểm tra I/O tệp Python

Python Chuyển đổi thành chuỗi JSON

Bạn có thể chuyển đổi từ điển thành chuỗi JSON bằng phương thức

import json
7

ví dụ 3. Chuyển đổi dict thành JSON


import json

person_dict = {'name': 'Bob',
'age': 12,
'children': None
}
person_json = json.dumps[person_dict]

# Output: {"name": "Bob", "age": 12, "children": null}
print[person_json]

Đây là bảng hiển thị các đối tượng Python và chuyển đổi tương đương của chúng thành JSON

PythonJSON Equivalent
import json
8object
import json
9,
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
0array
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
1string
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
2,
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
3,
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
2number
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
5true
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
6false
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
7null

Viết JSON vào một tệp

Để ghi JSON vào một tệp bằng Python, chúng ta có thể sử dụng phương thức

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
8

Ví dụ 4. Viết JSON vào một tệp


import json

person_dict = {"name": "Bob",
"languages": ["English", "French"],
"married": True,
"age": 32
}

with open['person.txt', 'w'] as json_file:
  json.dump[person_dict, json_file]

Trong chương trình trên, chúng tôi đã mở một tệp có tên

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
9 ở chế độ viết bằng cách sử dụng

{"name": "Bob", 
"languages": ["English", "French"]
}
0. Nếu tệp chưa tồn tại, nó sẽ được tạo. Sau đó,
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
8 biến đổi

{"name": "Bob", 
"languages": ["English", "French"]
}
2 thành một chuỗi JSON sẽ được lưu trong tệp
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
9

Khi bạn chạy chương trình, tệp

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
9 sẽ được tạo. Tệp có văn bản sau bên trong nó

{"name": "Bob", "languages": ["English", "French"], "married": true, "age": 32}

Python in JSON đẹp

Để phân tích và gỡ lỗi dữ liệu JSON, chúng tôi có thể cần in nó ở định dạng dễ đọc hơn. Điều này có thể được thực hiện bằng cách chuyển các tham số bổ sung


{"name": "Bob", 
"languages": ["English", "French"]
}
5 và

{"name": "Bob", 
"languages": ["English", "French"]
}
6 cho phương thức
import json
7 và
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
8

Ví dụ 5. Python in JSON đẹp


import json

person_string = '{"name": "Bob", "languages": "English", "numbers": [2, 1.6, null]}'

# Getting dictionary
person_dict = json.loads[person_string]

# Pretty Printing JSON string back
print[json.dumps[person_dict, indent = 4, sort_keys=True]]

Khi bạn chạy chương trình, đầu ra sẽ là

{
    "languages": "English",
    "name": "Bob",
    "numbers": [
        2,
        1.6,
        null
    ]
}

Trong chương trình trên, chúng tôi đã sử dụng


{"name": "Bob", 
"languages": ["English", "French"]
}
9 khoảng trắng để thụt đầu dòng. Và, các phím được sắp xếp theo thứ tự tăng dần

Nhân tiện, giá trị mặc định của indent là

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
7. Và, giá trị mặc định của sort_keys là
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads[person]

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print[ person_dict]

# Output: ['English', 'French']
print[person_dict['languages']]
6

Làm cách nào để chuyển đổi dữ liệu JSON thành từ điển trong Python?

Để chuyển đổi chuỗi JSON của Python thành Từ điển, hãy sử dụng json. hàm tải[] . Lưu ý rằng chỉ khi nội dung JSON là Đối tượng JSON và khi được phân tích cú pháp bằng hàm loading[], chúng ta mới nhận được đối tượng Từ điển Python. Nội dung JSON với mảng đối tượng sẽ được chuyển đổi thành danh sách Python bằng hàm loading[].

Làm cách nào để chuyển đổi dữ liệu JSON thành từ điển?

Hàm này dùng để phân tích chuỗi JSON. .
cú pháp. json. tải [file_name]
Tham số. Nó lấy tệp JSON làm tham số
loại trả lại. Nó trả về đối tượng từ điển python

Làm cách nào để tải dữ liệu JSON bằng Python?

Việc tải một đối tượng JSON bằng Python khá dễ dàng. Python có một gói tích hợp 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 đó các phương thức loading[] và load[] sẽ giúp chúng ta đọc tệp JSON.

Làm cách nào để chuyển đổi chuỗi JSON thành từ điển trong Python?

Nếu bạn có một chuỗi JSON, bạn có thể phân tích cú pháp chuỗi đó bằng cách sử dụng json. phương thức loading[] . Kết quả sẽ là một từ điển Python.

Chủ Đề