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

Python - Sự khác biệt về khóa của hai từ điển

Hai từ điển python có thể chứa một số khóa chung giữa chúng. Trong bài viết này, chúng ta sẽ tìm cách nhận được sự khác biệt trong các khóa có trong hai từ điển nhất định.

Với bộ

Ở đây chúng tôi lấy hai từ điển và áp dụng chức năng thiết lập cho chúng. Sau đó, chúng tôi trừ hai tập hợp để có được sự khác biệt. Chúng tôi thực hiện theo cả hai cách, bằng cách lấy từ điển thứ hai trừ đi từ điển thứ nhất và tiếp theo trừ đi từ điển thứ nhất ở dạng thứ hai. Những khóa không phổ biến được liệt kê trong tập kết quả.

Ví dụ

dictA = {'1': 'Mon', '2': 'Tue', '3': 'Wed'}
print("1st Distionary:\n",dictA)
dictB = {'3': 'Wed', '4': 'Thu','5':'Fri'}
print("1st Distionary:\n",dictB)

res1 = set(dictA) - set(dictB)
res2 = set(dictB) - set(dictA)
print("\nThe difference in keys between both the dictionaries:")
print(res1,res2)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

1st Distionary:
{'1': 'Mon', '2': 'Tue', '3': 'Wed'}
1st Distionary:
{'3': 'Wed', '4': 'Thu', '5': 'Fri'}
The difference in keys between both the dictionaries:
{'2', '1'} {'4', '5'}

Sử dụng trong vòng lặp for

Trong một cách tiếp cận khác, chúng ta có thể sử dụng vòng lặp for để lặp lại các khóa của một từ điển và kiểm tra sự hiện diện của nó bằng cách sử dụng mệnh đề in trong từ điển thứ hai.

Ví dụ

dictA = {'1': 'Mon', '2': 'Tue', '3': 'Wed'}
print("1st Distionary:\n",dictA)
dictB = {'3': 'Wed', '4': 'Thu','5':'Fri'}
print("1st Distionary:\n",dictB)

print("\nThe keys in 1st dictionary but not in the second:")
for key in dictA.keys():
   if not key in dictB:
      print(key)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

1st Distionary:
{'1': 'Mon', '2': 'Tue', '3': 'Wed'}
1st Distionary:
{'3': 'Wed', '4': 'Thu', '5': 'Fri'}

The keys in 1st dictionary but not in the second:
1
2