Computer >> Máy Tính >  >> Lập trình >> Python

Python - Ánh xạ chéo của hai danh sách giá trị từ điển

Khi bắt buộc phải ánh xạ chéo hai danh sách có giá trị từ điển, các phương pháp "setdefault" và "extension" được sử dụng.

Ví dụ

Dưới đây là một minh chứng về điều tương tự -

my_dict_1 = {"Python" : [4, 7], "Fun" : [8, 6]}
my_dict_2 = {6 : [5, 7], 8 : [3, 6], 7 : [9, 8]}

print("The first dictionary is : " )
print(my_dict_1)

print("The second dictionary is : " )
print(my_dict_2)

sorted(my_dict_1.items(), key=lambda e: e[1][1])
print("The first dictionary after sorting is ")
print(my_dict_1)

sorted(my_dict_2.items(), key=lambda e: e[1][1])
print("The second dictionary after sorting is ")
print(my_dict_2)

my_result = {}
for key, value in my_dict_1.items():
   for index in value:
      my_result.setdefault(key, []).extend(my_dict_2.get(index, []))

print("The resultant dictionary is : ")
print(my_result)

Đầu ra

The first dictionary is :
{'Python': [4, 7], 'Fun': [8, 6]}
The second dictionary is :
{6: [5, 7], 8: [3, 6], 7: [9, 8]}
The first dictionary after sorting is
{'Python': [4, 7], 'Fun': [8, 6]}
The second dictionary after sorting is
{6: [5, 7], 8: [3, 6], 7: [9, 8]}
The resultant dictionary is :
{'Python': [9, 8], 'Fun': [3, 6, 5, 7]}

Giải thích

  • Hai từ điển được định nghĩa và hiển thị trên bảng điều khiển.

  • Chúng được sắp xếp bằng phương thức ‘đã phân loại’ và phương thức lambda và được hiển thị trên bảng điều khiển.

  • Một từ điển trống được tạo.

  • Từ điển được lặp lại và khóa được đặt thành giá trị mặc định.

  • Chỉ mục của các phần tử trong từ điển thứ hai được lấy và thêm vào từ điển trống bằng cách sử dụng phương thức "extension".

  • Đây là đầu ra được hiển thị trên bảng điều khiển.