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

Python - นับความถี่สมาชิกในลิสต์

นับจำนวนครั้งที่แต่ละสมาชิกปรากฏในลิสต์

วิธีที่ 1: ใช้ Dictionary แบบ Manual

random_list = ['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B']
frequency = {}

for item in random_list:
    if item in frequency:
        frequency[item] += 1
    else:
        frequency[item] = 1

print(frequency)  # {'A': 3, 'B': 3, 'C': 1, 'D': 2}

วิธีที่ 2: ใช้ collections.Counter (แนะนำ)

import collections

random_list = ['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B']
frequency = collections.Counter(random_list)
print(dict(frequency))  # {'A': 3, 'B': 3, 'C': 1, 'D': 2}

สรุป

Counter ทำได้ในบรรทัดเดียว รองรับ operation อื่นๆ อีกมากมาย