🐍 Daily Python Problem: มาฝึกเขียนโค้ดกันเถอะ ✨

วันนี้มาทำโจทย์พื้นฐานที่น่าสนใจและได้ใช้บ่อยๆ ใน Python ค่ะ: "การนับจำนวนสระ (Vowels: a, e, i, o, u) ใน String"

📝 โจทย์ (Problem & Task):

เขียนฟังก์ชันชื่อ count_vowels(text) ที่รับพารามิเตอร์เป็น String และต้องนับจำนวนสระทั้งหมดที่อยู่ใน String นั้น โดยต้องนับรวมทั้ง ตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ด้วยนะ!

💡 เฉลยและวิธีคิด (Solution Insight):

ดูโค้ดของเราได้เลยค่ะ/ครับ! เทคนิคที่ใช้คือ:

1. กำหนดชุดตัวอักษรสระ vowels = 'aeiou'

2. แปลง String ที่รับเข้ามาให้เป็น ตัวพิมพ์เล็กทั้งหมด ด้วย .lower() ก่อนที่จะวนลูป (Loop) เพื่อให้เราไม่ต้องเช็คตัวพิมพ์ใหญ่แยก! (for char in text.lower():)

3. ใช้เงื่อนไข if char in vowels: เพื่อเช็คว่าตัวอักษรนั้นเป็นสระหรือไม่

4. นับเพิ่ม count += 1 และส่งค่ากลับ return count

💖 Keep Going!

การฝึกแก้โจทย์เล็กๆ น้อยๆ แบบนี้ทุกวัน จะช่วยพัฒนาทักษะการเขียนโค้ดของเราได้ดีมากๆ เลยค่ะ! ลองดู Output ตัวอย่าง แล้วลองเอาไปรันเองดูนะคะ!

#pythonlearning #data #ai #dataanalyst #learnonlemon8

2025/10/29 แก้ไขเป็น

... อ่านเพิ่มเติมนอกจากการเขียนฟังก์ชัน count_vowels เพื่อหาจำนวนสระในสตริงแล้ว อีกเคล็ดลับที่ช่วยให้โค้ดอ่านง่ายและมีประสิทธิภาพ คือการใช้ set สำหรับเก็บชุดสระแทนการใช้ string โดยตรง เพราะการตรวจสอบสมาชิกใน set จะทำได้เร็วขึ้นอย่างมีนัยสำคัญ เช่น vowels = {'a', 'e', 'i', 'o', 'u'} อีกทั้งยังสามารถปรับฟังก์ชันให้รองรับสระภาษาไทยหรืออักษรพิเศษอื่นๆ ได้ตามต้องการ เพียงเพิ่มอักขระลงในชุดสระที่เรากำหนด ซึ่งเหมาะสำหรับผู้ที่สนใจทำงานกับข้อความหลากหลายภาษา ในกรณีที่ต้องการนับสระในประโยคหรือข้อความยาวๆ การใช้เทคนิคนี้ช่วยลดเวลาที่ใช้ในการประมวลผลและทำให้โค้ดดูสะอาดขึ้นมาก สุดท้าย การฝึกทำโจทย์แบบนี้ทุกวัน นอกจากจะช่วยเพิ่มทักษะการเขียนโค้ดแล้ว ยังช่วยให้เข้าใจหลักการพื้นฐานของโปรแกรมมิ่ง ซึ่งเป็นสิ่งสำคัญสำหรับผู้เริ่มต้นเรียน Python อย่าลืมทดลองเขียนโค้ดเองและรันโค้ดดูผลลัพธ์ เพื่อเรียนรู้จากข้อผิดพลาดและพัฒนาให้ดีขึ้นนะคะ!