เมื่อจำเป็นต้องนับค่าที่ไม่ซ้ำในรายการทูเปิล ตัวดำเนินการ 'defaultdict', 'set' และวิธีการ 'append' จะถูกใช้
ตัวอย่าง
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -
from collections import defaultdict my_list = [(12, 32), (12, 21), (21, 32), (89, 21), (71, 21), (89, 11), (99, 10), (8, 23), (10, 23)] print("The list is :") print(my_list) my_result = defaultdict(list) for element in my_list: my_result[element[1]].append(element[0]) my_result = dict(my_result) result_dictionary = dict() for key in my_result: result_dictionary[key] = len(list(set(my_result[key]))) print("The resultant list is :") print(result_dictionary)
ผลลัพธ์
The list is : [(12, 32), (12, 21), (21, 32), (89, 21), (71, 21), (89, 11), (99, 10), (8, 23), (10, 23)] The resultant list is : {32: 2, 21: 3, 11: 1, 10: 1, 23: 2}
คำอธิบาย
-
แพ็คเกจที่จำเป็นจะถูกนำเข้าสู่สภาพแวดล้อม
-
รายการทูเพิลถูกกำหนดและแสดงบนคอนโซล
-
พจนานุกรมว่างเปล่าถูกสร้างขึ้น
-
รายการมีการทำซ้ำ และองค์ประกอบที่สองและองค์ประกอบแรกจะถูกผนวกเข้ากับพจนานุกรม
-
รายการนี้ถูกแปลงเป็นพจนานุกรมอีกครั้ง
-
มีการสร้างพจนานุกรมเปล่าอีกอันขึ้น
-
รายการถูกทำซ้ำและได้องค์ประกอบที่ไม่ซ้ำโดยใช้ตัวดำเนินการ 'set'
-
มันถูกแปลงเป็นรายการและกำหนดความยาวให้กับตัวแปร
-
นี่คือเอาต์พุตที่แสดงบนคอนโซล