Hầu hết các chương trình cần dữ liệu để làm việc. Dữ liệu này được cung cấp cho chương trình khi đang chạy hoặc tích hợp sẵn vào chương trình ngay từ đầu. JSON là một trong những cách để lưu trữ dữ liệu này một cách có tổ chức và dễ xử lý. Mặt khác, từ điển python là một trong những loại dữ liệu có thể lưu trữ đồng thời một chuỗi các phần tử theo cách được định dạng tốt, giống như JSON
Do đó, trong bài viết này, hãy cùng chúng tôi tìm hiểu một số phương pháp phổ biến để chuyển đổi Dict trong python sang JSON sau khi giới thiệu sơ lược về JSON và từ điển trong python
JSON trong Python là gì?
JSON [Ký hiệu đối tượng Javascript] là định dạng chuẩn để truyền dữ liệu dưới dạng văn bản có thể được gửi qua mạng. JSON là một cú pháp để trao đổi và lưu trữ dữ liệu qua mạng. Nó sử dụng nhiều API và cơ sở dữ liệu dễ dàng cho con người và máy móc đọc và hiểu. Python có một gói sẵn có tên là 'json', mà bạn có thể sử dụng để làm việc với dữ liệu JSON. Để sử dụng tính năng này, bạn phải nhập gói JSON trong lập trình python
Python JSON lưu trữ dữ liệu dưới dạng các cặp khóa-giá trị bên trong dấu ngoặc nhọn [{}] và do đó, nó khá giống với từ điển python. Nhưng ở đây, khóa JSON là một đối tượng chuỗi có dấu ngoặc kép bắt buộc. Tuy nhiên, giá trị tương ứng với khóa có thể thuộc bất kỳ kiểu dữ liệu nào, tôi. e. , chuỗi, số nguyên, JSON lồng nhau hoặc bất kỳ loại dữ liệu trình tự nào khác tương tự như một mảng
Ví dụ
import json # some JSON: a = '{ "name":"Jack", "age":21, "city":"California"}' # parse x: b = json.loads[a] print[b["city"]]
đầu ra
California
Hãy nhớ rằng JSON tồn tại dưới dạng chuỗi chứ không phải chuỗi từ ngữ cảnh dữ liệu
Từ điển trong Python là gì?
Từ điển là một trong những kiểu dữ liệu trong python được sử dụng để lưu trữ chuỗi dữ liệu trong một biến duy nhất. Từ điển Python giúp lưu trữ các giá trị dữ liệu giống như bản đồ không được hỗ trợ bởi bất kỳ loại dữ liệu nào khác chỉ chứa một giá trị duy nhất dưới dạng phần tử. Từ điển là một tập hợp các thành phần dữ liệu không có thứ tự và có thể thay đổi được lưu trữ dưới dạng khóa. cặp giá trị bên trong dấu ngoặc nhọn[{}]. Đây là dấu hai chấm [. ] đại diện cho khóa được liên kết với giá trị tương ứng của nó
Các giá trị từ điển có thể thuộc bất kỳ loại dữ liệu nào và cho phép các giá trị trùng lặp, trong khi các khóa từ điển là duy nhất và không thay đổi
Ví dụ
sample_dict = { "vegetable": "carrot", "fruit": "orange", "chocolate": "kitkat" } print[sample_dict]
đầu ra
{'vegetable': 'carrot', 'fruit': 'orange', 'chocolate': 'kitkat'}
Hãy nhớ rằng các khóa từ điển phân biệt chữ hoa chữ thường;
Sự khác biệt giữa Từ điển và JSON
Từ điển
JSON
Các khóa có thể là bất kỳ đối tượng có thể băm nào
Các phím chỉ có thể là các chuỗi
Không thể lặp lại các phím
Các phím có thể được đặt hàng và lặp lại
Không có giá trị mặc định như vậy được đặt
Các khóa có giá trị mặc định là không xác định
Giá trị có thể được truy cập bởi subscript
Các giá trị có thể được truy cập bằng cách sử dụng “. [dấu chấm] hoặc “[]”
Có thể sử dụng một trích dẫn đơn hoặc kép cho đối tượng chuỗi
Dấu ngoặc kép là cần thiết cho đối tượng chuỗi
Trả về loại đối tượng 'dict'
Trả về loại đối tượng 'chuỗi'
Chuyển đổi Dict thành JSON trong Python
Dưới đây là 5 phương pháp phổ biến bạn có thể sử dụng để chuyển đổi dict thành JSON trong python
1] Sử dụng hàm dumps[]
Python sở hữu một mô-đun mặc định, ‘json,’ với hàm dựng sẵn có tên là dumps[] để chuyển đổi từ điển thành đối tượng JSON bằng cách nhập mô-đun "json". Mô-đun "json" giúp dễ dàng phân tích các chuỗi JSON chứa đối tượng JSON. Ví dụ dưới đây hiển thị việc chuyển đổi từ điển python sang đối tượng JSON
Ví dụ
import json Fruit_Dict = { 'name': 'Apple', 'color': 'Red', 'quantity': 10, 'price': 60 } Fruit_Json = json.dumps[Fruit_Dict] print[Fruit_Json]
đầu ra
{"name": "Apple", "color": "Red", "quantity": 10, "price": 60}
2] Chuyển từ điển lồng nhau sang JSON
Bạn có thể tạo một từ điển lồng nhau trong ví dụ trên bằng cách khai báo một từ điển mới bên trong từ điển mặc định. Để chuyển đổi từ điển lồng nhau thành đối tượng json, bạn có thể sử dụng chính chức năng kết xuất. Ở đây, chúng tôi đã sử dụng thụt lề = 3, dùng để chỉ khoảng trắng ở đầu dòng mã
Ví dụ
import json dictionary = { 'fruit':{"Grapes": "10","color": "green"}, 'vegetable':{"chilli": "4","color": "red"}, } result = json.dumps[dictionary, indent = 3] print[result]
đầu ra
{ "fruit": { "Grapes": "10", "color": "green" }, "vegetable": { "chilli": "4", "Grapes": "10", }, "vegetable": { "chilli": "4", "color": "pink" }
3] Chuyển từ điển sang trích dẫn JSON
Bạn có thể khai báo một lớp và sử dụng nó để biểu diễn chuỗi để chuyển đổi nó thành đối tượng json. Ở đây, chúng ta đã khai báo lớp bằng phương thức __str__[self] và biến 'collect' được khai báo cùng với biến 'result' để gán với lớp và chuyển thành đối tượng json
Ví dụ
________số 8
đầu ra
{"apple": "grapes"}
4] Chuyển từ điển sang mảng JSON
Bạn có thể khai báo một mảng để kiểm tra các khóa và giá trị của từ điển và chuyển đổi nó thành đối tượng json. Vòng lặp for lưu trữ giá trị và phương thức dumps[] lưu trữ từ điển. Kiểm tra ví dụ dưới đây để hiểu rõ hơn về cách tiếp cận
Ví dụ
California
0
đầu ra
California
15] Chuyển từ điển sang JSON bằng sort_keys
Sử dụng phương thức này, bạn có thể sử dụng thuộc tính sort_keys bên trong phương thức dumps[] và đặt nó thành “true” để sắp xếp từ điển và chuyển đổi nó thành đối tượng json. Nếu bạn set false thì từ điển sẽ không được sắp xếp để tìm đối tượng json trong python
Ví dụ
California
2
đầu ra
California
3Phần kết luận
Như đã thảo luận ở trên, JSON là một định dạng dữ liệu và từ điển trong python là một cấu trúc dữ liệu. Nếu bạn muốn trao đổi dữ liệu cho các quy trình khác nhau, bạn nên sử dụng định dạng JSON để tuần tự hóa từ điển python của mình. Do đó, điều cần thiết và được khuyến nghị là tìm hiểu tất cả các phương pháp trên để chuyển đổi từ điển python thành đối tượng json và giúp việc lập trình của bạn trở nên dễ dàng và hiệu quả. Để tìm hiểu thêm về chuyển đổi trong python, hãy truy cập bài viết của chúng tôi “3 cách để chuyển đổi danh sách thành Tuple trong Python”