Ghi (write) File JSON Với Python - Góc Học IT
Có thể bạn quan tâm
Trước khi đọc bài này, các bạn nên đọc bài Đọc (read) file JSON với Python để biết khái niệm cơ bản của JSON cũng như cách đọc một file JSON. Với những kiến thức đó, các bạn sẽ dễ dàng hiểu được những cách ghi (write) file JSON trong Python.
1. Chuyển đổi (convert) dictionary sang JSON trong Python
Chúng ta có thể chuyển đổi (convert) dictionary thành JSON string bằng cách sử dụng hàm json.dumps() trong module json. Khi chuyển đổi (convert) từ dictionary trong Python thành JSON string, chúng ta sẽ có các object trong Python sẽ được chuyển đổi thành các data type tương ứng trong JSON. Bảng bên dưới tóm tắt các loại object trong Python sẽ được chuuyển thành data type tương ứng trong JSON.Python JSON dict object list, tuple array str string int, float number True true False false None null
Kết quả
type of data_dict: <class 'dict'> type of data_string: <class 'str'> {"domainname": "gochocit.com", "active": true, "numberposts": 360, "category": ["hardware", "software", "network"], "facebookpage": "https://www.facebook.com/gochocit/", "build": {"language": "php", "cms": "wordpress", "database": "mysql"}}1.1. In (print) JSON string với thụt đầu dòng (Indentation)
Trong ví dụ ở phần trên, JSON string được in ra không có thụt đầu dòng, rất khó nhìn. Chúng ta có thể in (print) JSON string với thụt đầu dòng (Indentation) với bằng cách truyền giá trị cho tham số indent của hàm json.dumps().import json data_dict = { "domainname": "gochocit.com", "active": True, "numberposts": 360, "category": ["hardware", "software", "network"], "facebookpage": "https://www.facebook.com/gochocit/", "build": { "language": "php", "cms": "wordpress", "database": "mysql" } } #convert dictionary to json string with indentation data_string = json.dumps(data_dict, indent=4) print(data_string)
Kết quả
{ "domainname": "gochocit.com", "active": true, "numberposts": 360, "category": [ "hardware", "software", "network" ], "facebookpage": "https://www.facebook.com/gochocit/", "build": { "language": "php", "cms": "wordpress", "database": "mysql" } }1.2. Sắp xếp (sort) JSON string với key trong JSON
Chúng ta có thể sắp xếp key trong JSON theo thứ tự của bảng chữ cái khi in (print) ra. Để làm việc này, chúng ta truyền giá trị True cho tham số sort_keys của hàm json.dumps().import json data_dict = { "domainname": "gochocit.com", "active": True, "numberposts": 360, "category": ["hardware", "software", "network"], "facebookpage": "https://www.facebook.com/gochocit/", "build": { "language": "php", "cms": "wordpress", "database": "mysql" } } #convert dictionary to json string with sort_keys data_string = json.dumps(data_dict, sort_keys=True) print(data_string)
Kết quả
{"active": true, "build": {"cms": "wordpress", "database": "mysql", "language": "php"}, "category": ["hardware", "software", "network"], "domainname": "gochocit.com", "facebookpage": "https://www.facebook.com/gochocit/", "numberposts": 360}1.3. JSON string với sort và indentation trong Python
Khi muốn tạo ra JSON string với sort và indentation, chúng ta truyền giá trị cho cả 2 tham số trên.import json data_dict = { "domainname": "gochocit.com", "active": True, "numberposts": 360, "category": ["hardware", "software", "network"], "facebookpage": "https://www.facebook.com/gochocit/", "build": { "language": "php", "cms": "wordpress", "database": "mysql" } } #convert dictionary to json string with sort_keys and indent data_string = json.dumps(data_dict, sort_keys=True, indent=4) print(data_string)
Kết quả
{ "active": true, "build": { "cms": "wordpress", "database": "mysql", "language": "php" }, "category": [ "hardware", "software", "network" ], "domainname": "gochocit.com", "facebookpage": "https://www.facebook.com/gochocit/", "numberposts": 360 }2. Ghi (write) file JSON trong Python
Khi đã tạo ra được JSON string thì việc ghi dữ liệu JSON vào file là hết sức dễ dàng. Việc này giống như việc ghi (write) một file trong Python.import json data_dict = { "domainname": "gochocit.com", "active": True, "numberposts": 360, "category": ["hardware", "software", "network"], "facebookpage": "https://www.facebook.com/gochocit/", "build": { "language": "php", "cms": "wordpress", "database": "mysql" } } #convert dictionary to json string with sort_keys and indent data_string = json.dumps(data_dict, sort_keys=True, indent=4) # write json string to file myjsonfile = open("info2.json", "w") myjsonfile.write(data_string) myjsonfile.close()
Kết quả nội dung của file info2.json được tạo ra
{ "active": true, "build": { "cms": "wordpress", "database": "mysql", "language": "php" }, "category": [ "hardware", "software", "network" ], "domainname": "gochocit.com", "facebookpage": "https://www.facebook.com/gochocit/", "numberposts": 360 }Nếu chúng ta muốn tạo ra JSON string từ một object trong Python rồi ghi JSON string vào file chỉ với 2 câu lệnh thì có thể sử dụng hàm json.dump().
- Chương trình tính giai thừa (factorial) trong Java
- Kiểm tra dữ liệu đầu vào (user input) trong C++
- Cài đặt Visual Studio Code để lập trình C++
- Các kiểu dữ liệu (data type) cơ bản trong Python
- Trích xuất chuỗi với hàm substr() trong PHP
Kết quả nội dung của file info2.json được tạo ra
{ "active": true, "build": { "cms": "wordpress", "database": "mysql", "language": "php" }, "category": [ "hardware", "software", "network" ], "domainname": "gochocit.com", "facebookpage": "https://www.facebook.com/gochocit/", "numberposts": 360 } 5/5 - (1 bình chọn)Bài trước và bài sau trong môn học<< Đọc (read) file JSON với PythonChuyển đổi (convert) dữ liệu XML sang dữ liệu JSON trong Python >>Từ khóa » đọc File Json Trong Python
-
Đọc (read) File JSON Với Python - Góc Học IT
-
Đọc Và Ghi File Json Python
-
Cách đọc JSON File Sử Dụng Python Qua Ví Dụ đơn Giản Nhất - Cafedev
-
Hướng Dẫn Lập Trình Với JSON Trong Python - NIIT - ICT Hà Nội
-
Xử Lý Json Với Python Như Thế Nào - CodeLearn
-
Chi Tiết Bài Học 25.Python JSON - Vimentor
-
JSON Trong Python (P1) - Viblo
-
Xử Lý File JSON Và File XML Trong Python - Viblo
-
Pandas Đọc Ghi File Json
-
Làm Việc Với JSON Trong Python - 40+ Bài Học Python Miễn Phí
-
Xử Lý Chuỗi JSON Trong Python
-
JSON Trong Python
-
[Python Cơ Bản Thường Dùng Trong Công Việc] Phần 7 : Xử Lý File JSON