บทที่ 3: รู้จักภาษาไพทอน (Introduction to Python)
เอาล่ะ! หลังจากที่เราฝึก "สมอง" ด้วยแนวคิดเชิงคำนวณกันไปแล้ว ก็ถึงเวลามาทำความรู้จักกับ "เครื่องมือ" ที่เราจะใช้สร้างสรรค์ผลงานกัน นั่นก็คือ ภาษาไพทอน (Python) ครับ มาเริ่มต้นเขียนโปรแกรมกับ Python ภาษาที่อ่านง่าย เหมือนภาษาอังกฤษ เป็นมิตรกับผู้เริ่มต้น และทรงพลังอย่างไม่น่าเชื่อกันเลย!
1. Python มาจากไหน?
เรื่องราวของ Python เริ่มต้นขึ้นในช่วงปลายทศวรรษ 1980 ที่ประเทศเนเธอร์แลนด์ โดยโปรแกรมเมอร์ชาวดัตช์ชื่อ Guido van Rossum (กุยโด ฟาน รอสซัม) ในตอนนั้น เขากำลังทำงานกับภาษาโปรแกรมที่ชื่อว่า ABC ซึ่งเป็นภาษาที่ถูกออกแบบมาเพื่อการสอน แต่เขารู้สึกว่ามันยังมีข้อจำกัดบางอย่างอยู่
ในช่วงวันหยุดคริสต์มาสปี 1989 กุยโดตัดสินใจที่จะสร้าง "โปรเจกต์งานอดิเรก" ขึ้นมา โดยนำเอาข้อดีของภาษาต่างๆ ที่เขาชื่นชอบมารวมกัน เขาต้องการสร้างภาษาใหม่ที่มีคุณสมบัติดังนี้:
- อ่านง่าย: มีโครงสร้างภาษาที่สะอาดตา คล้ายกับภาษาอังกฤษ ลดการใช้เครื่องหมายที่ซับซ้อน
- เขียนสนุก: เป็นภาษาที่ทรงพลังแต่ไม่เคร่งครัดจนเกินไป ให้นักพัฒนาสามารถสร้างโปรแกรมได้อย่างรวดเร็ว
- ขยายความสามารถได้: สามารถเชื่อมต่อกับโค้ดที่เขียนด้วยภาษาอื่น (เช่น C/C++) ได้ง่าย
และแล้วในปี 1991 เขาก็ได้เปิดตัว Python เวอร์ชันแรกสู่สาธารณะ
แล้วชื่อ "Python" มาจากไหน?
หลายคนมักเข้าใจผิดว่าชื่อ "Python" มาจากงูหลาม (Python snake) แต่ความจริงแล้ว กุยโดเป็นแฟนตัวยงของคณะตลกเซอร์เรียลจากประเทศอังกฤษในยุค 70 ที่ชื่อว่า "Monty Python's Flying Circus" เขาต้องการชื่อที่สั้น, มีเอกลักษณ์, และดูลึกลับนิดๆ ดังนั้น เขาจึงเลือกชื่อ "Python" เพื่อเป็นเกียรติแก่คณะตลกที่เขาชื่นชอบนั่นเอง!
Python ไม่ได้เป็นแค่ภาษา แต่ยังมี "ปรัชญา" ที่เป็นแนวทางในการออกแบบซ่อนอยู่ด้วย ซึ่งสรุปไว้ในบทกวี 19 ข้อที่เรียกว่า "The Zen of Python" เขียนโดย Tim Peters ประโยคที่โด่งดังที่สุดคือ:
"Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex."
(สวยงามดีกว่าน่าเกลียด, ชัดเจนดีกว่าคลุมเครือ, เรียบง่ายดีกว่าซับซ้อน)
2. ทำไม Python ถึงน่าเรียน?
ในโลกนี้มีภาษาโปรแกรมมากมาย แต่ Python กลับโดดเด่นและกลายเป็นหนึ่งในภาษาที่ได้รับความนิยมสูงที่สุดในโลกอย่างรวดเร็ว โดยเฉพาะในหมู่ผู้เริ่มต้นและในวงการเทคโนโลยีสมัยใหม่ นี่คือเหตุผลสำคัญที่ทำให้ Python "น่าเรียน" และเป็นตัวเลือกที่ยอดเยี่ยมสำหรับทุกคนครับ
1. อ่านและเขียนง่ายเหมือนภาษาอังกฤษ (Readable Syntax)
นี่คือจุดแข็งที่สุดของ Python! โครงสร้างภาษาถูกออกแบบมาให้ใกล้เคียงกับภาษาพูดของมนุษย์มากที่สุด ลดการใช้สัญลักษณ์ที่ซับซ้อน เช่น วงเล็บปีกกา {}
หรือเครื่องหมายเซมิโคลอน ;
ทำให้โค้ดสะอาดตาและเข้าใจง่าย
ลองเปรียบเทียบดูสิครับ:
# โค้ด Python สำหรับแสดงข้อความ
print("Hello, World!")
# โค้ดภาษา Java สำหรับทำสิ่งเดียวกัน
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
จะเห็นว่า Python ใช้โค้ดเพียงบรรทัดเดียว ในขณะที่ภาษาอื่นอาจต้องใช้โค้ดหลายบรรทัดสำหรับงานเดียวกัน นี่คือสิ่งที่ทำให้ Python เป็นมิตรกับผู้เริ่มต้นอย่างแท้จริง
2. มี "ของเล่น" (ไลบรารี) ให้ใช้เยอะมาก (Rich Libraries)
ลองจินตนาการว่าคุณอยากสร้างรถยนต์ แต่แทนที่จะต้องสร้างล้อ, เครื่องยนต์, และพวงมาลัยเองทั้งหมด คุณสามารถไปหยิบชิ้นส่วนสำเร็จรูปจากโรงงานมาประกอบได้เลย! "ไลบรารี" (Library) ใน Python ก็ทำงานแบบนั้นแหละครับ
Python มีคลังไลบรารีขนาดมหึมาที่เรียกว่า PyPI (Python Package Index) ซึ่งมีเครื่องมือสำเร็จรูปให้เราดาวน์โหลดไปใช้ฟรีๆ มากกว่า 350,000 โปรเจกต์!
- อยากวาดรูปเล่น? ใช้
turtle
,pygame
- อยากทำงานกับข้อมูลและกราฟ? ใช้
pandas
,matplotlib
- อยากสร้าง AI? ใช้
TensorFlow
,PyTorch
,scikit-learn
- อยากพัฒนาเว็บ? ใช้
Django
,Flask
การมีไลบรารีที่แข็งแกร่งทำให้เราสามารถสร้างโปรแกรมที่ซับซ้อนและทรงพลังได้โดยไม่ต้องเริ่มจากศูนย์
3. เป็นภาษาอเนกประสงค์ (Versatile)
Python ไม่ได้เก่งแค่อย่างใดอย่างหนึ่ง แต่เป็นเหมือน "มีดพับสวิส" ในโลกการเขียนโปรแกรม คุณสามารถใช้ Python สร้างได้แทบทุกอย่าง ตั้งแต่:
- สคริปต์อัตโนมัติ: เขียนโปรแกรมเล็กๆ เพื่อสั่งให้คอมพิวเตอร์ทำงานน่าเบื่อแทนเรา
- เว็บไซต์และเว็บแอปพลิเคชัน: สร้างระบบหลังบ้านที่แข็งแกร่ง (Backend) ให้กับเว็บดังๆ อย่าง Instagram, Spotify, Netflix
- วิทยาศาสตร์ข้อมูลและ AI: เป็นภาษาอันดับหนึ่งของวงการนี้ สำหรับการวิเคราะห์ข้อมูลและสร้างโมเดลปัญญาประดิษฐ์
- พัฒนาเกม: สร้างเกม 2D หรือโปรโตไทป์เกมได้อย่างรวดเร็ว
4. มีเพื่อนช่วยเยอะ (Large and Active Community)
เพราะ Python เป็นที่นิยม จึงมี "ชุมชน" (Community) ของนักพัฒนาทั่วโลกที่พร้อมจะช่วยเหลือกันและกัน เมื่อคุณเขียนโค้ดแล้วติดปัญหา หรือไม่เข้าใจเรื่องไหน คุณสามารถค้นหาคำตอบใน Google หรือเว็บไซต์อย่าง Stack Overflow และมักจะเจอคนที่เคยเจอปัญหาเดียวกันและมีคนมาช่วยตอบไว้แล้วเสมอ การมีชุมชนที่แข็งแกร่งทำให้การเรียนรู้ของเราไม่สะดุดและไม่รู้สึกโดดเดี่ยว
5. เป็นที่ต้องการของตลาดงาน (High Demand in Job Market)
ทักษะการเขียนโปรแกรมด้วย Python เป็นที่ต้องการอย่างสูงในตลาดงานปัจจุบัน โดยเฉพาะในสายงานที่กำลังเติบโตอย่าง Data Scientist, AI/Machine Learning Engineer, และ Backend Developer การเรียนรู้ Python จึงไม่ใช่แค่การเรียนเพื่อความสนุก แต่ยังเป็นการเปิดประตูสู่โอกาสทางอาชีพที่น่าสนใจและมีรายได้ดีในอนาคตอีกด้วย
3. Python ทำอะไรได้บ้าง?
ด้วยความที่เป็นภาษาอเนกประสงค์และมีไลบรารีที่แข็งแกร่ง Python จึงถูกนำไปใช้สร้างสรรค์นวัตกรรมและแก้ปัญหาในแทบทุกวงการ มาดูกันว่าพลังของ Python สามารถเนรมิตอะไรให้เกิดขึ้นได้บ้าง:
1. วิทยาศาสตร์ข้อมูล (Data Science) & การวิเคราะห์ข้อมูล
นี่คือดินแดนที่ Python ครองบัลลังก์อย่างแท้จริง! Python เป็นเครื่องมือหลักของนักวิทยาศาสตร์ข้อมูลทั่วโลกในการ:
- จัดการและทำความสะอาดข้อมูล: ใช้ไลบรารีอย่าง Pandas ในการจัดการข้อมูลตารางขนาดใหญ่ที่ซับซ้อนได้อย่างง่ายดาย
- สร้างภาพข้อมูล (Data Visualization): แปลงตัวเลขที่น่าเบื่อให้กลายเป็นกราฟที่สวยงามและเข้าใจง่ายด้วย Matplotlib และ Seaborn เพื่อค้นหาแนวโน้มที่ซ่อนอยู่
- การคำนวณทางวิทยาศาสตร์: ใช้ NumPy ในการประมวลผลข้อมูลตัวเลขจำนวนมหาศาล (Array) ได้อย่างรวดเร็ว
ตัวอย่างการใช้งานจริง: บริษัทต่างๆ ใช้ Python วิเคราะห์พฤติกรรมการซื้อของลูกค้า เพื่อแนะนำสินค้าที่ตรงใจ หรือวิเคราะห์ข้อมูลทางการแพทย์เพื่อหาปัจจัยเสี่ยงของโรค
2. ปัญญาประดิษฐ์ (AI) และ Machine Learning
Python คือภาษาอันดับหนึ่งสำหรับการสร้าง "สมอง" ให้กับคอมพิวเตอร์ ไลบรารีระดับโลกอย่าง TensorFlow (ของ Google), PyTorch (ของ Facebook) และ Scikit-learn ทำให้การสร้างโมเดล AI ที่ซับซ้อนกลายเป็นเรื่องที่เข้าถึงได้
- ระบบรู้จำภาพ (Image Recognition): สอนให้คอมพิวเตอร์ "ดู" และเข้าใจว่าในรูปคือแมว, รถยนต์ หรือใบหน้าคน (เช่น ระบบ Face ID ในมือถือ)
- การประมวลผลภาษาธรรมชาติ (NLP): ทำให้คอมพิวเตอร์เข้าใจภาษามนุษย์ (เช่น Siri, Google Assistant, หรือระบบแปลภาษา)
- ระบบแนะนำสินค้า/ภาพยนตร์: สร้างโมเดลที่เรียนรู้รสนิยมของคุณและแนะนำสิ่งที่คุณน่าจะชอบ (เช่น ระบบแนะนำของ Netflix หรือ YouTube)
3. การพัฒนาเว็บไซต์ (Web Development - Backend)
แม้ผู้ใช้จะมองไม่เห็น แต่เบื้องหลังเว็บไซต์และแอปพลิเคชันดังๆ มากมาย ขับเคลื่อนด้วย Python! โดย Python จะทำหน้าที่เป็น "สมอง" ของเว็บไซต์ (Backend) ที่คอยจัดการกับข้อมูล, การล็อกอิน, และตรรกะที่ซับซ้อนทั้งหมด
- Django: Framework ที่มีทุกอย่างครบครัน เหมาะสำหรับโปรเจกต์ขนาดใหญ่และซับซ้อน ถูกใช้โดย Instagram, Spotify, Pinterest
- Flask: Framework ที่เล็กและยืดหยุ่น เหมาะสำหรับโปรเจกต์ขนาดเล็กหรือเว็บ API ที่ต้องการความรวดเร็ว
ตัวอย่างการทำงาน: เมื่อคุณอัปโหลดรูปภาพลง Instagram, โค้ด Python ที่ฝั่งเซิร์ฟเวอร์จะรับรูปภาพนั้น, บันทึกลงฐานข้อมูล, และแจ้งเตือนให้เพื่อนๆ ของคุณทราบ
4. การทำงานอัตโนมัติและสคริปต์ (Automation & Scripting)
นี่คือ "พลังวิเศษ" ที่โปรแกรมเมอร์ทุกคนชื่นชอบ! คุณสามารถเขียนสคริปต์ Python สั้นๆ เพื่อสั่งให้คอมพิวเตอร์ทำงานซ้ำๆ ที่น่าเบื่อแทนเราได้ เช่น:
- ดาวน์โหลดไฟล์หลายร้อยไฟล์จากเว็บไซต์โดยอัตโนมัติ
- เปลี่ยนชื่อไฟล์รูปภาพในโฟลเดอร์ทีละหลายๆ พันไฟล์ตามรูปแบบที่ต้องการ
- ดึงข้อมูลจากไฟล์ Excel หลายๆ ไฟล์มารวมกันเป็นไฟล์เดียว
- ส่งอีเมลรายงานสรุปประจำวันโดยอัตโนมัติ
การเขียนสคริปต์อัตโนมัติช่วยประหยัดเวลาและลดความผิดพลาดจากมนุษย์ได้อย่างมหาศาล
5. และอื่นๆ อีกมากมาย!
- การพัฒนาเกม: แม้จะไม่ใช่ผู้นำหลัก แต่ไลบรารีอย่าง Pygame ก็เหมาะมากสำหรับการเรียนรู้พื้นฐานการสร้างเกม 2D และสร้างโปรโตไทป์เกมอย่างรวดเร็ว
- โปรแกรมบนเดสก์ท็อป (Desktop GUI): สามารถสร้างโปรแกรมที่มีหน้าต่างและปุ่มกดให้ใช้งานบนคอมพิวเตอร์ได้ด้วยไลบรารีอย่าง Tkinter หรือ PyQt
- ความปลอดภัยทางไซเบอร์ (Cybersecurity): ใช้ในการเขียนเครื่องมือสำหรับทดสอบการเจาะระบบ (Penetration Testing) และวิเคราะห์มัลแวร์
4. ตัวอย่างโค้ด Python
ลองมาดูตัวอย่างโค้ด Python ง่ายๆ กันดีกว่า จะเห็นว่ามันอ่านเข้าใจได้ไม่ยากเลย
# นี่คือคอมเมนต์ โปรแกรมจะไม่อ่านบรรทัดนี้
# 1. การแสดงผลข้อความออกทางหน้าจอ
print("สวัสดีชาวโลก!")
# 2. การสร้างตัวแปรเพื่อเก็บข้อมูล
name = "สมชาย"
age = 15
# 3. การนำตัวแปรมาแสดงผล
print("สวัสดี ฉันชื่อ " + name)
print("ฉันอายุ " + str(age) + " ปี")
- # (เครื่องหมายชาร์ป): ใช้สำหรับเขียน "คอมเมนต์" คือข้อความที่เอาไว้อธิบายโค้ดของเราเอง คอมพิวเตอร์จะข้ามบรรทัดนี้ไป
- print(): เป็นคำสั่งพื้นฐานที่สุด ใช้สำหรับแสดงข้อความหรือค่าของตัวแปรออกทางหน้าจอ
- ตัวแปร (Variable): เหมือนกล่องเก็บของที่เราตั้งชื่อได้ (เช่น `name`, `age`) เพื่อเก็บข้อมูลต่างๆ เอาไว้ใช้ภายหลัง
ลองคัดลอกโค้ดด้านบนมาทดสอบในกล่องโค้ดด้านล่างกันครับ
ทดลองเขียนโค้ดของคุณที่นี่
ถัดไปลองเปลี่ยนข้อมูลการแสดงผลเป็นชื่อ นามสกุล ห้อง และเลขที่ของนักเรียนดูครับ
******************
เด็กชายณัฐพล บัวอุไร
ขั้นมัธยมศึกษาปีที่ 4/10
เลขที่ 25
******************
ทดลองเขียนโค้ดของคุณที่นี่
เห็นไหมครับว่าการเขียนโปรแกรมไพทอนไม่ยากเลย ต่อไปเราไปทำแบบทดสอบกันหน่อยดีกว่าครับ