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

รายการความถี่ขององค์ประกอบใน Python


ในบทความนี้ เราจะมาเรียนรู้วิธีค้นหาความถี่ขององค์ประกอบในรายการ เราสามารถแก้ปัญหาได้หลายวิธี มาดูกันเลย 2 ตัว

ทำตามขั้นตอนด้านล่างเพื่อเขียนโค้ด

  • เริ่มต้นรายการด้วยองค์ประกอบและพจนานุกรมเปล่า
  • วนซ้ำรายการองค์ประกอบ
    • ตรวจสอบว่าองค์ประกอบนั้นมีอยู่ในพจนานุกรมหรือไม่
    • หากมีองค์ประกอบอยู่ในพจนานุกรมแล้ว ให้เพิ่มจำนวนขึ้น
    • หากไม่มีองค์ประกอบในพจนานุกรม ให้เริ่มต้นการนับด้วย 1
  • พิมพ์พจนานุกรม

ตัวอย่าง

มาดูโค้ดกันเลย

# initializing the list
random_list = ['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B']
frequency = {}

# iterating over the list
for item in random_list:
   # checking the element in dictionary
   if item in frequency:
      # incrementing the counr
      frequency[item] += 1
   else:
      # initializing the count
      frequency[item] = 1

# printing the frequency
print(frequency)

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

ผลลัพธ์

{'A': 3, 'B': 3, 'C': 1, 'D': 2}

ทำตามขั้นตอนด้านล่างเพื่อแก้ไขปัญหาด้วยวิธีอื่น เราจะใช้วิธีโมดูลเพื่อค้นหาความถี่ขององค์ประกอบ

  • นำเข้าโมดูลคอลเลกชัน
  • เริ่มต้นรายการด้วยองค์ประกอบ
  • รับความถี่ขององค์ประกอบโดยใช้ตัวนับจากโมดูลคอลเลกชัน
  • แปลงผลลัพธ์เป็นพจนานุกรมโดยใช้ dict และพิมพ์ความถี่

ตัวอย่าง

มาดูโค้ดกันเลย

# importing the module
import collections

# initializing the list
random_list = ['A', 'A', 'B', 'C', 'B', 'D', 'D', 'A', 'B']

# using Counter to find frequency of elements
frequency = collections.Counter(random_list)

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

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

ผลลัพธ์

{'A': 3, 'B': 3, 'C': 1, 'D': 2}

บทสรุป

หากคุณมีคำถามใดๆ ในบทความ โปรดระบุในส่วนความคิดเห็น