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

นับความถี่ของทุกองค์ประกอบในอาร์เรย์ด้วยโมดูล collections ใน Python


เนื่องจาก Python อนุญาตให้มีองค์ประกอบซ้ำใน List เราจึงอาจมีองค์ประกอบหนึ่งปรากฏหลายครั้ง ความถี่ขององค์ประกอบใน List บ่งบอกว่าองค์ประกอบนั้นเกิดขึ้นกี่ครั้ง ในบทความนี้ เราใช้ฟังก์ชัน Counter ของโมดูล collections เพื่อหาความถี่ของแต่ละรายการใน List

ไวยากรณ์

ไวยากรณ์: Counter(list)
โดย list คือ iterable ใน Python

ตัวอย่าง

โค้ดด้านล่างใช้ Counter() เพื่อติดตามความถี่ และ items() เพื่อวนลูปแต่ละรายการในผลลัพธ์ของฟังก์ชัน counter เพื่อพิมพ์ในรูปแบบที่อ่านง่าย

from collections import Counter

list = ['Mon', 'Tue', 'Wed', 'Mon', 'Mon', 'Tue']
# หาจำนวนของแต่ละองค์ประกอบ
list_freq = Counter(list)

# พิมพ์ผลลัพธ์ของ counter
print(list_freq)

# พิมพ์โดยใช้ลูป
for key, value in list_freq.items():
    print(key, "มีจำนวน", value)

ผลลัพธ์

การรันโค้ดข้างต้นจะได้ผลลัพธ์ดังนี้ -

Counter({'Mon': 3, 'Tue': 2, 'Wed': 1})
Mon มีจำนวน 3
Tue มีจำนวน 2
Wed มีจำนวน 1