JSON kết xuất Python
JSON trong Python là một định dạng chuẩn lấy cảm hứng từ JavaScript để trao đổi dữ liệu và truyền dữ liệu dưới dạng định dạng văn bản qua mạng. Nói chung, JSON ở định dạng chuỗi hoặc văn bản. Nó có thể được sử dụng bởi API và cơ sở dữ liệu và nó đại diện cho các đối tượng dưới dạng cặp tên/giá trị. JSON là viết tắt của Ký hiệu đối tượng JavaScript Show
Cú pháp JSON của Python JSON được viết dưới dạng cặp khóa và giá trị { "Key": "Value", "Key": "Value", } JSON rất giống với từ điển Python. Python hỗ trợ JSON và nó có một thư viện sẵn có dưới dạng JSON Thư viện JSON trong PythonCác mô-đun bên ngoài của 'marshal' và 'pickle' của Python duy trì một phiên bản của thư viện JSON Python. Làm việc với JSON trong Python để thực hiện các hoạt động liên quan đến JSON như mã hóa và giải mã, trước tiên bạn cần nhập thư viện JSON và cho điều đó trong. tập tin py, import json Các phương thức sau có sẵn trong mô-đun JSON Python MethodDescriptiondumps() mã hóa thành các đối tượng JSONdump() mã hóa chuỗi ghi trên fileloads() Giải mã JSON stringload() Giải mã trong khi đọc tệp JSONBạn sẽ học được gì
Python sang JSON (Mã hóa)Thư viện JSON của Python theo mặc định thực hiện việc dịch các đối tượng Python thành các đối tượng JSON PythonJSONdictObjectlistArrayunicodeStringnumber – int, longnumber – intfloatnumber – realTrueTrueFalseFalseNoneNullChuyển đổi dữ liệu Python sang JSON được gọi là hoạt động Mã hóa. Việc mã hóa được thực hiện với sự trợ giúp của phương thức thư viện JSON – dumps() Kết xuất JSON() trong Pythonjson. dumps() trong Python là một phương thức chuyển đổi các đối tượng từ điển của Python thành định dạng dữ liệu chuỗi JSON. Nó rất hữu ích khi các đối tượng được yêu cầu ở định dạng chuỗi cho các hoạt động như phân tích cú pháp, in, v.v. Bây giờ hãy thực hiện json đầu tiên của chúng tôi. kết xuất ví dụ mã hóa bằng Python import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string) đầu ra {"person": {"name": "Kenn", "sex": "male", "age": 28}}) Hãy xem một ví dụ về Python ghi JSON vào tệp để tạo tệp JSON của từ điển bằng cách sử dụng cùng hàm dump() # here we create new data_file.json file with write mode using file i/o operation with open('json_file.json', "w") as file_write: # write json data into file json.dump(person_data, file_write) đầu ra Không có gì để hiển thị...Trong hệ thống của bạn json_file. json được tạo. Bạn có thể kiểm tra tệp đó như được hiển thị trong ví dụ ghi JSON vào tệp Python bên dưới JSON sang Python (Giải mã)Giải mã chuỗi JSON được thực hiện với sự trợ giúp của phương thức sẵn có json. tải () và json. load() của thư viện JSON trong Python. Ở đây bảng dịch hiển thị ví dụ về các đối tượng JSON sang các đối tượng Python rất hữu ích để thực hiện giải mã trong Python của chuỗi JSON JSONPythonObjectdictArraylistStringunicodenumber – intnumber – int, longnumber – realfloatTrueTrueFalseFalseNullNoneHãy cùng xem một ví dụ giải mã JSON Python phân tích cú pháp cơ bản với sự trợ giúp của json. chức năng tải, import json # json library imported # json data string person_data = '{ "person": { "name": "Kenn", "sex": "male", "age": 28}}' # Decoding or converting JSON format in dictionary using loads() dict_obj = json.loads(person_data) print(dict_obj) # check type of dict_obj print("Type of dict_obj", type(dict_obj)) # get human object details print("Person......", dict_obj.get('person')) đầu ra {'person': {'name': 'Kenn', 'sex': 'male', 'age': 28}} Type of dict_obj Giải mã tệp JSON hoặc Phân tích cú pháp tệp JSON trong PythonBây giờ, chúng ta sẽ tìm hiểu cách đọc tệp JSON trong Python với ví dụ JSON phân tích cú pháp Python GHI CHÚ. Giải mã tệp JSON là thao tác liên quan đến Tệp Nhập/Xuất (I/O). Tệp JSON phải tồn tại trên hệ thống của bạn tại vị trí được chỉ định mà bạn đề cập trong chương trình của mình Python đọc tệp JSON Ví dụ import json #File I/O Open function for read data from JSON File with open('X:/json_file.json') as file_object: # store file data in object data = json.load(file_object) print(data) Ở đây dữ liệu là một đối tượng từ điển của Python như được hiển thị trong ví dụ về tệp JSON đã đọc ở trên đầu ra ________số 8Mã hóa nhỏ gọn trong PythonKhi cần giảm kích thước tệp JSON của mình, bạn có thể sử dụng mã hóa thu gọn trong Python Ví dụ, import json # Create a List that contains dictionary lst = ['a', 'b', 'c',{'4': 5, '6': 7}] # separator used for compact representation of JSON. # Use of ',' to identify list items # Use of ':' to identify key and value in dictionary compact_obj = json.dumps(lst, separators=(',', ':')) print(compact_obj) đầu ra import json0 Định dạng mã JSON (Bản in đẹp)
Ví dụ import json1 đầu ra import json2 Để hiểu rõ hơn về điều này, hãy thay đổi thụt lề thành 40 và quan sát đầu ra- Đặt hàng mã JSON thuộc tính sort_keys trong đối số của hàm kết xuất Python sẽ sắp xếp khóa trong JSON theo thứ tự tăng dần. Đối số sort_keys là một thuộc tính Boolean. Khi đó là sự sắp xếp thực sự được cho phép nếu không thì không. Hãy hiểu với ví dụ sắp xếp chuỗi Python thành JSON Ví dụ, import json3 đầu ra import json4 Như bạn có thể quan sát, tuổi của chìa khóa, ô tô, trẻ em, v.v. được sắp xếp theo thứ tự tăng dần Mã hóa đối tượng phức tạp của PythonMột đối tượng Complex có hai phần khác nhau đó là
Ví dụ. 3 +2i Trước khi thực hiện mã hóa một đối tượng phức tạp, bạn cần kiểm tra một biến có phức tạp hay không. Bạn cần tạo một hàm kiểm tra giá trị được lưu trữ trong một biến bằng cách sử dụng một phương thức thể hiện Hãy tạo hàm cụ thể để kiểm tra đối tượng phức tạp hay đủ điều kiện để mã hóa import json5 đầu ra import json6 Giải mã đối tượng JSON phức tạp trong PythonĐể giải mã đối tượng phức tạp trong JSON, hãy sử dụng tham số object_hook để kiểm tra chuỗi JSON có chứa đối tượng phức tạp hay không. Hãy hiểu với chuỗi thành JSON Python Ví dụ, import json7 đầu ra import json8 Tổng quan về JSONEncoder lớp tuần tự hóa JSONLớp JSONEncoder được sử dụng để tuần tự hóa bất kỳ đối tượng Python nào trong khi thực hiện mã hóa. Nó chứa ba phương pháp mã hóa khác nhau đó là
Với sự trợ giúp của phương thức encode() của lớp JSONEncoder, chúng ta cũng có thể mã hóa bất kỳ đối tượng Python nào như trong ví dụ về bộ mã hóa Python JSON bên dưới import json9 đầu ra import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)0 Tổng quan về lớp giải tuần tự hóa JSON JSONDecoderLớp JSONDecoder được sử dụng để giải tuần tự hóa bất kỳ đối tượng Python nào trong khi thực hiện giải mã. Nó chứa ba phương pháp giải mã khác nhau đó là
Với sự trợ giúp của phương thức decode() của lớp JSONDecoder, chúng ta cũng có thể giải mã chuỗi JSON như trong ví dụ về bộ giải mã JSON Python bên dưới import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)1 đầu ra import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)2 Giải mã dữ liệu JSON từ URL. Ví dụ thực tế cuộc sốngChúng tôi sẽ tìm nạp dữ liệu của CityBike NYC (Hệ thống chia sẻ xe đạp) từ URL được chỉ định (https. // nguồn cấp dữ liệu. citibikenyc. com/trạm/trạm. json) và chuyển đổi sang định dạng từ điển Python tải JSON từ tệp Ví dụ GHI CHÚ. - Đảm bảo thư viện yêu cầu đã được cài đặt trong Python của bạn, Nếu chưa, hãy mở Terminal hoặc CMD và gõ
import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)3 đầu ra import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)4 Ngoại lệ liên quan đến Thư viện JSON trong Python
Python tải JSON từ tệp Ví dụ import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)5 Số vô hạn và NaN trong PythonĐịnh dạng trao đổi dữ liệu JSON (RFC – Yêu cầu nhận xét) không cho phép Giá trị vô hạn hoặc Giá trị Nan nhưng không có hạn chế trong Thư viện Python- JSON để thực hiện hoạt động liên quan đến Giá trị vô hạn và Giá trị Nan. Nếu JSON có kiểu dữ liệu INFINITE và Nan thì nó đã chuyển đổi nó thành chữ Ví dụ, import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)6 đầu ra import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)7 Khóa lặp lại trong Chuỗi JSONRFC chỉ định tên khóa phải là duy nhất trong đối tượng JSON, nhưng không bắt buộc. Thư viện JSON của Python không đưa ra ngoại lệ đối với các đối tượng lặp lại trong JSON. Nó bỏ qua tất cả các cặp khóa-giá trị lặp lại và chỉ xem xét cặp khóa-giá trị cuối cùng trong số chúng
import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)8 đầu ra import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)9 CLI (Giao diện dòng lệnh) với JSON trong Pythonjson. công cụ cung cấp giao diện dòng lệnh để xác thực cú pháp in đẹp của JSON. Hãy xem một ví dụ về CLI Kết xuất JSON trong Python là gì?Jôn. phương thức dumps() cho phép chúng ta chuyển đổi đối tượng python thành đối tượng JSON tương đương . Hay nói cách khác là gửi dữ liệu từ python sang json. json. Phương thức dump() cho phép chúng ta chuyển đổi một đối tượng python thành một đối tượng JSON tương đương và lưu kết quả vào tệp JSON tại thư mục làm việc.
Làm cách nào để kết xuất chuỗi JSON trong Python?Để kết xuất đối tượng Python thành chuỗi JSON, bạn có thể sử dụng hàm json. phương thức dumps() của mô-đun json tích hợp sẵn . json. phương thức ghép nối dump() (không có "s") chuyển đổi đối tượng Python thành chuỗi JSON và ghi nó vào một tệp.
Làm cách nào để đọc các kết xuất JSON trong Python?cú pháp. . Thông số đối tượng. Tuần tự hóa obj dưới dạng luồng được định dạng JSON phím bỏ qua. Nếu phím bỏ qua là True (mặc định. Sai), thì các phím dict không thuộc loại cơ bản (str, int, float, bool, None) sẽ bị bỏ qua thay vì tăng TypeError Sự khác biệt giữa các bãi chứa Jsonify và JSON là gì?jsonify() là một phương thức trợ giúp do Flask cung cấp để trả về dữ liệu JSON đúng cách. jsonify() trả về một đối tượng Phản hồi với bộ mô phỏng ứng dụng/json, trong khi json. dumps() chỉ trả về một chuỗi dữ liệu JSON . Điều này có thể dẫn đến kết quả ngoài ý muốn. |