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

Chương trình Python để tìm các bộ trùng lặp trong danh sách các bộ

Khi cần tìm các tập hợp trùng lặp trong danh sách các tập hợp, thì "Bộ đếm" và "bộ đếm" được sử dụng.

Ví dụ

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

from collections import Counter

my_list = [{4, 8, 6, 1}, {6, 4, 1, 8}, {1, 2, 6, 2}, {1, 4, 2}, {7, 8, 9}]

print("The list is :")
print(my_list)
my_freq = Counter(frozenset(sub) for sub in my_list)

my_result = []
for key, value in my_freq.items():

   if value > 1 :
      my_result.append(key)

print("The result is :")
print(my_result)

Đầu ra

The list is :
[{8, 1, 4, 6}, {8, 1, 4, 6}, {1, 2, 6}, {1, 2, 4}, {8, 9, 7}]
The result is :
[frozenset({8, 1, 4, 6})]

Giải thích

  • Danh sách các giá trị đã đặt được xác định và hiển thị trên bảng điều khiển.

  • Nó được lặp lại bằng cách sử dụng "frozenset" và "Counter".

  • Điều này cho biết tần suất của mọi giá trị trong danh sách.

  • Điều này được gán cho một biến.

  • Một danh sách trống được tạo.

  • Các phần tử của biến được lặp lại và nếu tần suất lớn hơn 1, thì phần tử này sẽ được thêm vào danh sách trống.

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