Trong bài viết này, chúng ta sẽ xem cách chuyển đổi một chuỗi biểu diễn từ điển thành từ điển thực tế chứa các cặp khóa-giá trị.
Sử dụng json.loads
Hàm json.loads có thể phân tích chuỗi cho trước và trả về kết quả dưới dạng từ điển bình thường, bảo toàn cấu trúc dữ liệu.
Ví dụ
import json
stringA = '{"Mon" : 3, "Wed" : 5, "Fri" : 7}' # Chuỗi từ điển cho trước
print("Given string : \n", stringA)
# Sử dụng json.loads()
res = json.loads(stringA)
# Kết quả
print("The converted dictionary : \n", res)
Kết quả
Chạy đoạn mã trên cho kết quả sau:
Given string : {"Mon" : 3, "Wed" : 5, "Fri" : 7} The converted dictionary : {'Mon': 3, 'Wed': 5, 'Fri': 7}
Sử dụng ast.literal_eval
Phương thức này từ module ast hoạt động tương tự. Chuỗi chứa từ điển được phân tích cú pháp thành các giá trị bình thường và tạo ra từ điển thông thường.
Ví dụ
import ast
stringA = '{"Mon" : 3, "Wed" : 5, "Fri" : 7}' # Chuỗi từ điển cho trước
print("Given string : \n", stringA)
# Sử dụng literal_eval
res = ast.literal_eval(stringA)
# Kết quả
print("The converted dictionary : \n", res)
Kết quả
Chạy đoạn mã trên cho kết quả sau:
Given string : {"Mon" : 3, "Wed" : 5, "Fri" : 7} The converted dictionary : {'Fri': 7, 'Mon': 3, 'Wed': 5}