Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

หาตัวอักษรร่วมใน 3 อาร์เรย์ที่เรียงแล้วด้วย Dictionary Intersection ใน Python

Common Elements ใน 3 Arrays ใช้ Counter Intersection

หาตัวเลข/ตัวอักษรที่ปรากฏในทั้ง 3 อาร์เรย์ (นับตามจำนวนครั้งที่น้อยที่สุด)

ใช้ collections.Counter และ & Operator


from collections import Counter

A = ['Sun',12,14,11,34]
B = [6,12,'Sun',11]
C = [19,6,20,'Sun',12,67,11]

cntA = Counter(A)
cntB = Counter(B)
cntC = Counter(C)

common = dict(cntA.items() & cntB.items() & cntC.items())
result = []
for val, freq in common.items():
    result.extend([val]*freq)
print(result)  # ['Sun', 11, 12]

& ระหว่าง Counter ทำ Intersection (นับ min frequency)