Giả sử bạn có một danh sách nhưng muốn chuyển đổi nó thành từ điển. Các phần tử của danh sách sẽ trở thành khóa, và None sẽ đóng vai trò là giá trị placeholder.
Sử dụng dict.fromkeys()
Hàm khởi tạo dict() tạo từ điển trong Python. Chúng ta sử dụng phương thức fromkeys() để tạo các phần tử từ điển.
Ví dụ
listA = ["Mon", "Tue", "Wed", "Thu", "Fri"]
print("Danh sách cho trước:\n", listA)
res = dict.fromkeys(listA)
print("Từ điển kết quả:\n", res)
Kết quả
Danh sách cho trước: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
Từ điển kết quả: {'Mon': None, 'Tue': None, 'Wed': None, 'Thu': None, 'Fri': None}
Sử dụng zip và dict
Chúng ta cũng có thể sử dụng hàm khởi tạo dict kết hợp với zip để chuyển mỗi phần tử thành cặp khóa-giá trị.
Ví dụ
listA = ["Mon", "Tue", "Wed", "Thu", "Fri"]
print("Danh sách cho trước:\n", listA)
res = dict(zip(listA, [None] * len(listA)))
print("Từ điển kết quả:\n", res)
Kết quả
Danh sách cho trước: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
Từ điển kết quả: {'Mon': None, 'Tue': None, 'Wed': None, 'Thu': None, 'Fri': None}
Sử dụng dict comprehension
Tạo vòng lặp for để duyệt qua từng phần tử của danh sách và gán None làm giá trị.
Ví dụ
listA = ["Mon", "Tue", "Wed", "Thu", "Fri"]
print("Danh sách cho trước:\n", listA)
res = {key: None for key in listA}
print("Từ điển kết quả:\n", res)
Kết quả
Danh sách cho trước: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
Từ điển kết quả: {'Mon': None, 'Tue': None, 'Wed': None, 'Thu': None, 'Fri': None}