Cập nhật tệp json trong python
Để cập nhật một đối tượng JSON trong một tệp, hãy nhập thư viện Show
Cụ thể, đây là bốn bước cụ thể để cập nhật tệp JSON hiện có bằng một mục nhập mới
import json filename = 'your_file.json' entry = {'carl': 33} # 1. Read file contents with open(filename, "r") as file: data = json.load(file) # 2. Update json object data.append(entry) # 3. Write json file with open(filename, "w") as file: json.dump(data, file) Trên thực tế, khi sử dụng phương thức import json filename = 'your_file.json' entry = {'carl': 33} # 1. Read file contents with open(filename, "r") as file: data = json.load(file) # 2. Update json object data.append(entry) # 3. Write json file with open(filename, "w") as file: json.dump(data, file)7, đối tượng Python trả về được chuyển đổi từ định dạng JSON bằng cách sử dụngJSONPythonobjectdictarrayliststringstrnumber (int)intnumber (real)floattrueTruefalseFalsenullNone Để hiểu rõ hơn về các cấu trúc dữ liệu quan trọng nhất, chẳng hạn như từ điển Python, bạn có thể muốn xem Học viện Khoa học Máy tính Finxter Hướng dẫn cơ bản về từ điển trong Python Khóa học miễn phí cho tất cả các thành viên cao cấp của Finxter Phương pháp 2. Chỉ mở tệp một lần bằng cách đặt lại con trỏ tệpThay vì mở đối tượng tệp hai lần, bạn chỉ có thể mở nó một lần và đặt lại con trỏ tệp bằng cách sử dụng import json filename = 'your_file.json' entry = {'carl': 33} # 1. Read file contents with open(filename, "r") as file: data = json.load(file) # 2. Update json object data.append(entry) # 3. Write json file with open(filename, "w") as file: json.dump(data, file)8 để ghi đè lên nội dung tệp hiện có bằng bốn bước sau
Đây là mã cụ thể import json filename = 'your_file.json' # Old JSON File: # [{"alice": 24, "bob": 27}] entry = {'carl': 33} with open(filename, "r+") as file: data = json.load(file) data.append(entry) file.seek(0) json.dump(data, file) # New JSON file: # [{"alice": 24, "bob": 27}, {"carl": 33}] Phương pháp 3. Tạo một tệp JSON ban đầu và cập nhật nó sau đóNếu bạn chưa có tệp JSON, trước tiên bạn có thể tạo tệp từ danh sách ban đầu như sau import json filename = 'your_file.json' lst = [{'alice': 24, 'bob': 27}] # Write the initial json object (list of dicts) with open(filename, mode='w') as f: json.dump(lst, f) # Append the new dict to the list and overwrite whole file with open(filename, mode='w') as f: lst.append({'carl':33}) json.dump(lst, f) Tóm tắt và Thảo luậnCả ba phương pháp được trình bày trong bài viết này về cơ bản đều sử dụng cùng một ý tưởng. gọi import json filename = 'your_file.json' # Old JSON File: # [{"alice": 24, "bob": 27}] entry = {'carl': 33} with open(filename, "r+") as file: data = json.load(file) data.append(entry) file.seek(0) json.dump(data, file) # New JSON file: # [{"alice": 24, "bob": 27}, {"carl": 33}]7) để cập nhật tệp có một số dữ liệu. Biến dữ liệu có thể chứa tất cả các định dạng JSON khác nhau, chẳng hạn như danh sách từ điển hoặc từ điển Nếu trước tiên bạn cần tải dữ liệu từ tệp, hãy sử dụng import json filename = 'your_file.json' # Old JSON File: # [{"alice": 24, "bob": 27}] entry = {'carl': 33} with open(filename, "r+") as file: data = json.load(file) data.append(entry) file.seek(0) json.dump(data, file) # New JSON file: # [{"alice": 24, "bob": 27}, {"carl": 33}]2 trên đối tượng tệp được mở ở chế độ đọc Nói chung, việc thêm dữ liệu vào tệp JSON không phải là một ý tưởng hay vì đối với mỗi bản cập nhật nhỏ, bạn phải đọc và phân tích toàn bộ đối tượng tệp. Nếu tệp JSON của bạn có n mục, thì độ phức tạp thời gian chạy của việc cập nhật nó là O(n) Cách tiếp cận tốt hơn là lưu trữ dữ liệu dưới dạng tệp CSV có thể được đọc từng dòng để đơn giản hóa việc phân tích cú pháp và cập nhật đáng kể bằng cách chỉ thêm một dòng vào tệp có độ phức tạp thời gian chạy không đổi Cảm ơn bạn đã nghiên cứu bài viết này, vui lòng xem khóa học cheat sheet Python miễn phí của tôi để luôn nhạy bén và cải thiện kỹ năng Python của bạn liên tục, từng ngày. 🙂 Bạn có thể đăng ký miễn phí tại đây lập trình viênChris Trong khi làm việc với tư cách là một nhà nghiên cứu trong các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners (NoStarch 2020), đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây Làm cách nào để cập nhật tệp JSON trong Python?Cập nhật đối tượng JSON trong Python cũng đơn giản như sử dụng hàm update() tích hợp sẵn từ gói json mà chúng ta đã nhập . Phương thức cập nhật được sử dụng để thêm một cặp khóa-giá trị mới vào chuỗi JSON mà chúng tôi đã khai báo trong mã của mình.
Làm cách nào để cập nhật một giá trị trong tệp JSON?Cách cập nhật giá trị thuộc tính của tệp đối tượng json e. g. ("trạng thái"="thành công") . Giải tuần tự hóa json Truy cập mã thông báo Cập nhật giá trị Chúng tôi có thể cập nhật tệp JSON không?Bạn có thể sử dụng trình soạn thảo văn bản JSON để dễ dàng sửa đổi, định dạng và xác thực các tệp JSON của mình .
Làm cách nào để cập nhật tệp JSON động?Để làm điều này, bạn sẽ muốn chia mã của mình thành hai phần -- phần phía máy chủ sẽ đọc/cập nhật tệp JSON và phần phía máy khách sẽ là HTML thuần túy và sẽ gửi yêu cầu đến máy chủ |