การนับสถิติของตัวอักษร ง่าย ๆ สไตล์ไพธอนครับ
ตัวอย่างต่อไปนี้จะแสดงการนับตัวอักขระภาษาอังกฤษและภาษาไทย โดยเก็บรายงานสถิติว่าแต่ละตัวอักษรมีอยู่กี่ตัวที่ใช้งาน ทดลองดูโค๊ดต่อไปนี้ครับ..
>>> import string, re
>>> import re
>>> txt = """ความเป็นไทย นี้ไซร์ ยิ่งใหญ่นัก
เอกลักษณ์ เป็นหนึ่ง พึงรักษา
ศิลป วิทยาการ นานา
ควรรู้ว่า เพียงพอ สานต่อกัน
ผู้ที่รู้ จงอย่าอยู่ นิ่งรอเฉย
อย่าละเลย สร้างผลงาน ตำนานฝัน
เพื่อกระจาย เมล็ดคุณค่า เอนกนันต์
เป็นปรัชญา นำคนนั้น ถึงฝั่งงาม"""
>>> for i in string.letters:
m = re.findall(i,txt)
if m:
print 'พบ t',i , 'จำนวน', len(m), 'ตัว'
==========================
ผลลัพธ์ :
==========================
พบ ก จำนวน 8 ตัว
พบ ค จำนวน 5 ตัว
พบ ง จำนวน 11 ตัว
พบ จ จำนวน 2 ตัว
พบ ฉ จำนวน 1 ตัว
พบ ช จำนวน 1 ตัว
พบ ซ จำนวน 1 ตัว
พบ ญ จำนวน 2 ตัว
พบ ณ จำนวน 2 ตัว
พบ ด จำนวน 1 ตัว
พบ ต จำนวน 3 ตัว
พบ ถ จำนวน 1 ตัว
พบ ท จำนวน 3 ตัว
พบ น จำนวน 22 ตัว
พบ ป จำนวน 5 ตัว
พบ ผ จำนวน 2 ตัว
พบ ฝ จำนวน 2 ตัว
พบ พ จำนวน 4 ตัว
พบ ม จำนวน 3 ตัว
พบ ย จำนวน 10 ตัว
พบ ร จำนวน 10 ตัว
พบ ล จำนวน 6 ตัว
พบ ว จำนวน 4 ตัว
พบ ศ จำนวน 1 ตัว
พบ ษ จำนวน 2 ตัว
พบ ส จำนวน 2 ตัว
พบ ห จำนวน 2 ตัว
พบ อ จำนวน 9 ตัว
พบ ะ จำนวน 2 ตัว
พบ ั จำนวน 9 ตัว
พบ า จำนวน 17 ตัว
พบ ำ จำนวน 2 ตัว
พบ ิ จำนวน 4 ตัว
พบ ี จำนวน 3 ตัว
พบ ึ จำนวน 3 ตัว
พบ ื จำนวน 1 ตัว
พบ ุ จำนวน 1 ตัว
พบ ู จำนวน 4 ตัว
พบ เ จำนวน 10 ตัว
พบ ใ จำนวน 1 ตัว
พบ ไ จำนวน 2 ตัว
พบ ็ จำนวน 4 ตัว
พบ ่ จำนวน 13 ตัว
พบ ้ จำนวน 6 ตัว
พบ ์ จำนวน 3 ตัว
==========================
จากตัวอย่างด้านบนนี้ เราใช้ฟังก์ชั่น letters() เพื่อแสดงอักขระทั้งภาษาอังกฤษและภาษาไทย (ขึ้นอยู่กับระบบปฏิบัติการครับ) จากนั้นนำไปป้อนเป็น regular expression ที่ต้องการค้นหาจำนวนคำโดยส่งให้กับฟังก์ชั่น findall() ภายในโมดูล re (Regular Expression) ผลลัพธ์ที่ได้จะเป็นตัวแปรลีสต์เท่ากับจำนวนที่ค้นพบและเก็บไว้ในอ็อบเจ็ค m จากนั้นใช้คำสั่ง len(m) คือบอกขนาดของอักขระที่ค้นพบ เท่านี้เราก็สามารถเก็บสถิติของอักขระได้แล้วครับ...
ผมอาจจะอธิบายสั้นไปนิดนึงนะครับ.. อย่าว่ากันนะครับ
Re: การนับสถิติของตัวอักษร ง่าย ๆ สไตล์ไพธอนครับ
ไปเจอนานเลยนะครับ คุณ nprotech ไปเที่ยวสงกรานต์มาเหรอครับ ;-)
Re: การนับสถิติของตัวอักษร ง่าย ๆ สไตล์ไพธอนครับ
อากาศร้อน ๆ ก็ต้องไปรดน้ำกันหน่อยล่ะครับ.. !!
แล้วคุณแอดมินเป็นไงบ้างครับ ?
สงกานต์ที่ผ่านมา ?
ผมขอถามตรงนี้เลยล่ะกันนะครับ..
คือว่า ผมอยากจะรบกวนขอฐานข้อมูล MySQL จะได้มั้ยครับ ?
แล้วผมอยากให้ลงโปรแกรม MySQL-python
ส่วนเรื่องสคริปต์ไพธอนผมเองยังคงรันบนเซอร์เวอร์ไม่ได้นะครับ.. !!
รบกวนด้วยนะครับ !!
แหมอากาศร้อน ๆ อย่างนี้ ทนไม่ไหวแล้วล่ะครับ ขอตัวไปอาบน้ำอาบท่าก่อนล่ะครับ !!
Re: การนับสถิติของตัวอักษร ง่าย ๆ สไตล์ไพธอนครับ
ผมเองก็ไม่ได้ไปไหนเลยครับ อยู่ กทม. ซ้อมเครื่องคอมรับ สงกรานต์
เรื่องของ mysql นี้ยินดีให้ 100 % เลยครับ แต่ตอนนี้เครื่อง server ของทางชุมนุมยังไม่อนุมัติเลยครับ ส่วนเครื่องที่กำลังใช้อยู่นี้ผมไม่มีสิทธิ์ add ให้ได้ครับเป็น แต่ขอรับปากนะครับว่าถ้าได้เครื่องเมื่อไหร่ผมจะ add ให้คุณ nprotech ก่อนมครเลยครับ ตอนนี้รอเรื่องการเซ็นสัญญาอยู่ครับ (รอนานมากๆ)
Re: การนับสถิติของตัวอักษร ง่าย ๆ สไตล์ไพธอนครับ
ตอบเร็วจนผมคิดว่ากำลังอยู่ในแช็ตรูม เลยล่ะครับ :)
ยังไงก็เอาใจช่วยให้ได้เครื่องเร็ว ๆ ครับ.. :-) :-P