Vì vậy, tôi đang cố gắng thiết lập JSON để tôi có thể lưu trữ dữ liệu ở giữa các phiên người dùng Tôi thích tên nhưng tôi không biết cách thêm hoặc thay đổi giá trị cụ thể trong tệp JSON bên ngoài như
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
3 Làm cách nào để điền vào đó import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
4 cho tệp JSON bằng Python?Tôi đã cố gắng sử dụng các bãi rác và tất cả các hướng dẫn sử dụng các bãi rác
JSON trong một tệp khác
{
"human_name": "",
"oracle_name": "",
"human_age": "",
"human_gender": "",
"oracle_gender": ""
}
Python
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
Kết quả dự kiến là khi tôi in dữ liệu mà nó hiển thị đầu vào, nhưng khi tôi chạy nó, nó sẽ đi
Tệp "rember.py", dòng 3, trong với Open ['data.json', '+'] dưới dạng fileData: valueError: phải có chính xác một chế độ tạo/đọc/ghi/viết và nhiều nhất là một cộng
json. Dump [json_Object, a_file]. Làm thế nào để bạn tạo một đối tượng JSON từ một chuỗi trong Python? Sử dụng hàm json.loads []. JSON. Hàm tải [] chấp nhận làm đầu vào một chuỗi hợp lệ và chuyển đổi nó thành từ điển Python. Quá trình này được gọi là Deserialization - hành động chuyển đổi một chuỗi thành một đối tượng.
Trong hướng dẫn này, bạn sẽ tìm hiểu những điều cơ bản của JSON - nó là gì, nơi nó được sử dụng phổ biến nhất và cú pháp của nó.
Bạn cũng sẽ thấy cách chuyển đổi một chuỗi thành JSON trong Python.
Bắt đầu nào!
JSON là gì?
Hầu hết các ngôn ngữ lập trình hiện đại đều có các thư viện để phân tích dữ liệu JSON và tạo dữ liệu JSON.
JSON được sử dụng ở đâu?
JSON chủ yếu được sử dụng để gửi và nhận dữ liệu giữa máy chủ và máy khách, trong đó khách hàng là một trang web hoặc ứng dụng web.
Đó là một định dạng vững chắc hơn nhiều để sử dụng trong các ứng dụng web của chu kỳ phản hồi yêu cầu khi kết nối qua mạng. Điều này được so sánh với XML phức tạp và ít nhỏ gọn hơn, đó là định dạng lựa chọn nhiều năm trước.
Cú pháp JSON cơ bản
Trong JSON, dữ liệu được viết thành các cặp giá trị khóa, như SO:
"first_name": "Katie"
Dữ liệu được đặt trong các dấu ngoặc kép và cặp giá trị khóa được phân tách bằng dấu hai chấm.
Có thể có nhiều hơn một cặp giá trị khóa và mỗi cặp được phân tách bằng dấu phẩy:
"first_name": "Katie", "last_name": "Rodgers"
Ví dụ trên cho thấy một đối tượng, một tập hợp nhiều cặp giá trị khóa.
Đối tượng ở bên trong niềng răng xoăn:
{
"first_name": "Katie",
"last_name": "Rodgers"
}
Bạn cũng có thể tạo các mảng, một danh sách các giá trị được đặt hàng, với JSON. Trong trường hợp đó, các mảng được chứa bên trong dấu ngoặc vuông:
[
{
"first_name": "Katie",
"last_name": "Rodgers"
},
{
"first_name": "Naomi",
"last_name": "Green"
},
]
// or:
{
"employee": [
{
"first_name": "Katie",
"last_name": "Rodgers"
},
{
"first_name": "Naomi",
"last_name": "Green"
},
]
}
//this created an 'employee' object that has 2 records.
// It defines the first name and last name of an employee
Cách làm việc với dữ liệu JSON trong Python
Bao gồm mô -đun JSON cho Python
Để sử dụng JSON với Python, trước tiên bạn sẽ cần đưa mô -đun JSON ở đầu tệp Python của mình. Điều này được tích hợp cho Python và là một phần của thư viện tiêu chuẩn.
Vì vậy, giả sử bạn có một tệp có tên
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
5. Ở phía trên, bạn sẽ thêm dòng sau:import json
Sử dụng chức năng import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
6
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
Nếu bạn có dữ liệu chuỗi JSON trong chương trình của mình như vậy:
#include json library
import json
#json string data
employee_string = '{"first_name": "Michael", "last_name": "Rodgers", "department": "Marketing"}'
#check data type with type[] method
print[type[employee_string]]
#output
#
Bạn có thể biến nó thành JSON trong Python bằng hàm
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
6.Hàm
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
6 chấp nhận làm đầu vào một chuỗi hợp lệ và chuyển đổi nó thành từ điển Python.Quá trình này được gọi là Deserialization - hành động chuyển đổi một chuỗi thành một đối tượng.
#include json library
import json
#json string data
employee_string = '{"first_name": "Michael", "last_name": "Rodgers", "department": "Marketing"}'
#check data type with type[] method
print[type[employee_string]]
#convert string to object
json_object = json.loads[employee_string]
#check new data type
print[type[json_object]]
#output
#
Sau đó, bạn có thể truy cập từng mục riêng lẻ, giống như bạn khi sử dụng từ điển Python:
#include json library
import json
#json string data
employee_string = '{"first_name": "Michael", "last_name": "Rodgers", "department": "Marketing"}'
#check data type with type[] method
print[type[employee_string]]
#convert string to object
json_object = json.loads[employee_string]
#check new data type
print[type[json_object]]
#output
#
#access first_name in dictionary
print[json_object["first_name"]]
#output
#Michael
Hãy lấy một ví dụ khác:
- Lấy một số dữ liệu chuỗi JSON:
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
0- Sử dụng chức năng
6 để chuyển đổi chuỗi thành một đối tượng:import json with open['data.json', '+'] as filedata: data = filedata.read[] used_data = json.loads[data] if str[used_data[['human_name']]] == "": print["what is your name"] name = input[] json.dumps[name] if str[used_data[['oracle_name']]] == "": print["what is my name"] oracle_name = input[] json.dumps[oracle_name] print[str[['human_name']]]
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
1- Truy cập dữ liệu:
import json
with open['data.json', '+'] as filedata:
data = filedata.read[]
used_data = json.loads[data]
if str[used_data[['human_name']]] == "":
print["what is your name"]
name = input[]
json.dumps[name]
if str[used_data[['oracle_name']]] == "":
print["what is my name"]
oracle_name = input[]
json.dumps[oracle_name]
print[str[['human_name']]]
2Sự kết luận
Và ở đó bạn có nó - bây giờ bạn biết những điều cơ bản của việc sử dụng JSON trong Python.
Nếu bạn muốn tìm hiểu thêm về Python, Freecodecamp có chứng nhận Python đưa bạn từ các nguyên tắc cơ bản như biến, vòng lặp và chức năng cho các khái niệm nâng cao hơn như cấu trúc dữ liệu. Cuối cùng, bạn cũng sẽ xây dựng 5 dự án.
Cảm ơn bạn đã đọc và học hỏi hạnh phúc!
Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu