ในขณะที่จัดการข้อมูลโดยใช้ python เราอาจเจอสถานการณ์ที่เราจำเป็นต้องค้นหาองค์ประกอบที่เหมือนกันในหลาย ๆ อาร์เรย์ ซึ่งสามารถทำได้โดยการแปลงอาร์เรย์เป็นพจนานุกรมดังที่แสดงด้านล่าง
ในตัวอย่างด้านล่าง เราใช้อาร์เรย์และใช้คอนเทนเนอร์ตัวนับจากโมดูลคอลเลกชัน จะนับจำนวนองค์ประกอบแต่ละองค์ประกอบที่มีอยู่ในคอนเทนเนอร์ จากนั้นเราแปลงเป็นพจนานุกรมโดยใช้ dict() และใช้ตัวดำเนินการ &เพื่อระบุเฉพาะองค์ประกอบทั่วไปในอาร์เรย์ สุดท้าย เราวนซ้ำรายการต่างๆ ของพจนานุกรมที่สร้างขึ้นใหม่และผนวกค่าจากพจนานุกรมเพื่อให้ได้ผลลัพธ์สุดท้ายของค่าทั่วไป
ตัวอย่าง
from collections import Counter arrayA = ['Sun', 12, 14, 11, 34] arrayB = [6, 12, 'Sun', 11] arrayC = [19, 6, 20, 'Sun', 12, 67, 11] arrayA = Counter(arrayA) arrayB = Counter(arrayB) arrayC = Counter(arrayC) # Intersection commonDict = dict(arrayA.items() & arrayB.items() & arrayC.items()) res = [] # result for (key, val) in commonDict.items(): for i in range(0, val): res.append(key) print("The common values among the arrays are:\n ",res)
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
The common values among the arrays are: ['Sun', 11, 12]