การประมวลผลข้อความได้กลายเป็นสาขาที่สำคัญในการเรียนรู้ของเครื่องและ AI Python รองรับไฟล์นี้ด้วยเครื่องมือและไลบรารี่ที่มีอยู่มากมาย ในบทความนี้เราจะมาดูกันว่าเราจะหาจำนวนการเกิดขึ้นของตัวอักษรแต่ละตัวของสตริงได้อย่างไร
มีเคาน์เตอร์
เมธอด Counter จะนับจำนวนการเกิดขึ้นขององค์ประกอบใน iterable ดังนั้นจึงใช้งานได้โดยส่งต่อสตริงที่จำเป็นลงไป
ตัวอย่าง
from collections import Counter
# Given string
strA = "timeofeffort"
print("Given String: ",strA)
# Using counter
res = {}
for keys in strA:
res[keys] = res.get(keys, 0) + 1
# Result
print("Frequency of each character :\n ",res) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
ผลลัพธ์
Given String: timeofeffort
Frequency of each character :
{'t': 2, 'i': 1, 'm': 1, 'e': 2, 'o': 2, 'f': 3, 'r': 1} ด้วย get()
เราสามารถจัดการสตริงเป็นพจนานุกรมและนับคีย์สำหรับอักขระแต่ละตัวโดยใช้ get() ในลูป for
ตัวอย่าง
# Given string
strA = "timeofeffort"
print("Given String: ",strA)
# Using counter
res = {}
for keys in strA:
res[keys] = res.get(keys, 0) + 1
# Result
print("Frequency of each character :\n ",res) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given String: timeofeffort
Frequency of each character :
{'t': 2, 'i': 1, 'm': 1, 'e': 2, 'o': 2, 'f': 3, 'r': 1} พร้อมชุด
ชุดใน python เก็บองค์ประกอบเฉพาะ ดังนั้นเราจึงสามารถใช้มันอย่างชาญฉลาดโดยการนับจำนวนครั้งที่พบอักขระตัวเดียวกันซ้ำแล้วซ้ำเล่าเมื่อวนซ้ำผ่านสตริงเป็นแบบวนซ้ำได้
ตัวอย่าง
# Given string
strA = "timeofeffort"
print("Given String: ",strA)
# Using counter
res = {}
res={n: strA.count(n) for n in set(strA)}
# Result
print("Frequency of each character :\n ",res) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given String: timeofeffort
Frequency of each character :
{'f': 3, 'r': 1, 'm': 1, 'o': 2, 'i': 1, 't': 2, 'e': 2}