เมื่อจำเป็นต้องค้นหาชุดที่ซ้ำกันในรายการชุด ระบบจะใช้ "ตัวนับ" และ "ชุดแช่แข็ง"
ตัวอย่าง
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน
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) ผลลัพธ์
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})] คำอธิบาย
-
รายการค่าที่ตั้งไว้ถูกกำหนดและแสดงบนคอนโซล
-
มีการทำซ้ำโดยใช้ 'frozenset' และ 'Counter'
-
ซึ่งจะให้ความถี่ของทุกค่าในรายการ
-
สิ่งนี้ถูกกำหนดให้กับตัวแปร
-
มีการสร้างรายการที่ว่างเปล่า
-
องค์ประกอบของตัวแปรถูกทำซ้ำ และหากความถี่มากกว่า 1 ค่านี้จะถูกผนวกเข้ากับรายการว่าง
-
สิ่งนี้จะแสดงเป็นเอาต์พุตบนคอนโซล