Python คืออะไร เราไปหาคำตอบกันเลยค่ะ
Python คือชื่อภาษาที่ใช้ในการเขียนโปรแกรมภาษาหนึ่งที่มีความสามารถสูง ไม่แพ้ภาษาอื่นๆที่มีอยู่ในตอนนี้ Python นั้นเป็นภาษาที่ Open Source ทำให้ทุกคนสามารถที่จะนำ Python มาพัฒนาโปรแกรมของเราได้ฟรีๆโดยไม่ต้องเสียค่าใช้จ่าย และความเป็น Open Source ทำให้มีคนเข้ามาช่วยกันพัฒนาให้ Python มีความสามารถสูงขึ้น และใช้งานได้ครบคุมกับทุกลักษณะงาน
Python ถูกสร้างขึ้นมาโดย Guido Van Rossum โค้ดของ Python ถูกสร้างขึ้นมาจากภาษาซี การประมวลผลจะทำในแบบอินเทอร์พรีเตอร์ คือจะประมวลผลไปทีละบรรทัดและปฏิบัติตามคำสั่งที่ได้รับ Python เวอร์ชันแรกคือ เวอร์ชัน 0.9.0 ออกมาเมื่อปี 2533 และเวอร์ชันปัจจุบันคือ 2.5.2 ออกเมื่อวันที่ 21 กุมภาพันธ์ 2551 และได้มีการพัฒนา Python ในรุ่นที่ 3 คือ Python 3000 หรือ Py3k โดยจะมีการปรุงปรุงใหม่เกือบหมด และตอนนี้อยู่ในระหว่างการทดลองอยู่ เรามาดูถึงคุณลักษณะของ Python กันเลยค่ะ
คุณลักษณะเด่นของภาษา Python
· ภาษา Python สนับสนุนแนวแบบคิดออปเจกต์โอเรียนเทด หรือ OOP (Object Oriented Programming)
· Pythonเป็นภาษาคอมพิวเตอร์ที่ไม่คิดมูลค่าการใช้งานและเป็นภาษาที่มีความยึดหยุ่นสูงมาก
· โค้ดที่เขียนด้วย Python สามารถนำไปรันบนระบบปฏิบัติการอื่นๆ ได้(Portable)เช่น Linux, Ms-windows (95, 98, NT, 2000, XP), Amiga, Be-OS, OS/2, VMS, QNX, และระบบอื่นๆอีกมากมาย
· Python สนับสนุนเทคโนโลยี COM ของ Ms-windows
· Python รวมมาตรฐานการอินเตอร์เฟส Tkinter ซึ่งสนับสนุนบนระบบ X windows, Ms-windows และ Macintosh การใช้คำสั่ง Tkinter API ช่วยให้โปรแกรมเมอร์ไม่ต้องแก้ไขโค้ดเมื่อนำไปรันบนระบบปฏิบัติการอื่นๆ
· Python เป็น Dynamic typing คือ สามารถเปลี่ยนชนิดข้อมูลได้ง่ายและสะดวก
· Python มี Buil-in Object Types คือ โครงสร้างของข้อมูลที่สามารถใช้ได้ใน Python ประกอบด้วย ลิสต์, ดิกชันนารี, สตริง ที่ง่ายต่อการใช้งานและมีประสิทธิภาพสูง
· Pythonมีเครื่องมือต่างๆ มากมาย เช่น การประมวลผลเท็กซ์ไฟล์ การเรียงข้อมูล การเชื่อต่อสตริง การตรวจสอบเงื่อนไขของข้อความ การแทนคำ เป็นต้น
· Python มีมอดูลสำหรับจัดการ Regular Expresion
· Python มีมอดูลที่สร้างขึ้นจากนักพัฒนาสนับสนุนมากมาย ได้แก่ COM, Image, CORBA, ORBs, XML เป็นต้น
· Python จัดการหน่วยความจำอย่างอัตโนมัติ สามารถจักการพื้นที่หน่วยความจำที่ไม่ต่อเนื่องให้ทำงานได้อย่างมีประสิทธิภาพ
· Python อนุญาตให้ฝังชุดคำสั่งของ Python เอาไว้ภายในโคดภาษา C/C++ ได้
· Python อนุญาตให้โปรแกรมเมอร์สร้าง Dynamic Link Libray (DLL) เพื่อใช้ร่วมกับ Python
· Python มีมอดูลสนับสนุนเกี่ยวกับเน็ตเวิร์ก โปรเซส เธรด regular, expression, xml, GUI และอื่นๆ
· Pythonประกอบด้วยมอดูลสำหรับสร้าง Internet Script และติดต่อกับอินเทอร์เน็ตผ่าน Sockets, และทำหน้าที่เป็น CGI Script ตรอดจนใข้งานคำสั่ง FTP, Glopher, XML และอื่นๆอีกมาก
· Python สามารถประมาลผมทางด้านวิยาศาสตร์ และวิศวกรรมศาสตร์ได้อย่างมีประสิทธิภาพ
· Python มีฟังก์ชันสนับสนุนฐานข้อมูล เช่น MySQL, Sybase, Oracle, Informix, ODBC และอื่นๆ
· Python มีไลบรารีสนับสนุนด้านการสร้างภาพกราฟฟิก เช่น ทำภาพเบลอ หรือภาพชัด หรือเขียนข้อความบนภาพ ตลอดจนบันถึกไฟล์ในรูปแบบต่างๆ ได้อย่างสะดวกและมีประสิทธิภาพ
· Python มีไลบรารีสนับสนุนด้านปัญญาประดิษฐ์
· Python มีไลบรารีสำหรับสร้างเอกสาร PDF โดยไม่ต้องติดตั้ง Acrobat Writer
· Python มีไลบรารีสำหรับสร้าง Shockwaves Flash (SWF) โดยไม่ต้องติดตั้ง Macromedia Flash
จะเห็นได้ว่าคุณลักษณะเด่นของภาษา Python นั้นมีอยู่มากและใช้งานได้อย่างรวดเร็วซึ่งหาได้ยากจากภาษาเขียนโปรแกรมภาษา อื่นๆ แล้วใครล่ะจะใช้ Python แล้วใช้ทำอะไรบ้างเราไปดูกันเลยค่ะ
· Red Hat ใช้ Python เป็นเครื่องมือสำหรับการติดตั้งระบบปฏิบัติการ Linux (Installer)
· Google สร้างขึ้นด้วย Python
· Infoseek ใช้ Python จัดการ web search products
· Yahoo! ใช้ Python ในการจักการด้าน Internet services
· NASA ใช้ Python สำหรับ mission-control-system
· Lawrence Livermore Labs ใช้ Python สำหรับงาน numeric programming
· Industrial Light and Magic ใช้ Python สร้างภาพแอนิเมชัน
วิธีการติดตั้งโปรแกรมมีดังนี้ค่ะ
สำหรับคนที่เขียน Python บน Linux สามารถข้ามขั้นนี้ไปได้เลย เพราะ Linux ทุกตัวมี Python อยู่แล้ว แต่สำหรับบางคนที่โชคร้ายที่ใช้ FreeBSD? ก็ต้องลง Python ด้วย เพราะไม่ใช่ของปกติที่มีตั้งแต่ลง รวมไปถึงคนที่ใช้ Windows ด้วยเช่นกัน
Python เป็นภาษาแบบ Open Source ทำให้มี Python หลายแบบ แต่มี 2 ยี่ห้อที่พบเห็นมากที่สุด ได้แก่
· Python by Python.org
- ข้อมูลการติดตั้งเพิ่มเติม >> https://srv4.zim.mpg.de/sec-cgi-bin/epubtktrac/wiki/PythonLinuxInstall
· ActivePython by ActiveState
- ข้อมูลการติดตั้งเพิ่มเติม >> https://srv4.zim.mpg.de/sec-cgi-bin/epubtktrac/wiki/WinInstall
ถ้าเป็นบน Linux/UNIX ส่วนใหญ่จะใช้ Python จาก Python.org เพราะมีมาพร้อมกับระบบปฏิบัติการนั้นๆ อยู่แล้ว แต่สำหรับWindows ActivePython จะเหมาะกว่าเนื่องจาก ActivePython จะเพิ่มโมดูลที่จำเป็นสำหรับการเขียนโปรแกรมติดต่อกับวินโดส์ที่ลึกลับซับซ้อนมาให้ในตัว
เราจะมาดูหลักการทำงานของภาษา Python กันเลยค่ะ
ตัวแปรภาษาคืออะไร เมื่อเราได้เขียนโค้ดขึ้นมาตามโครงสร้างของโปรแกรมภาษาใดก็ตาม และการจะให้โค้ดคำสั่งเหล่านั้นทำงานได้ก็จะต้องมีตัวแปรภาษามาจัดการแปล โค้ดคำสั่ง เพื่อให้ทำงานตามที่เราต้องการ
โดยลักษณะของตัวแปลภาษานั้นแบ่งได้ 2 ประเภทใหญ่ ๆ คือ
1. คอมไพเลอร์ (Compiler) เป็นตัวแปลภาษาสำหรับภาษา C, C++, Pascal การทำงานก็คือจะตรวจสอบความผิดพลาดของโค้ดคำสั่งตั้งแต่ต้นจนจบก่อน หรือเรียกว่าการคอมไพล์ ถ้าไม่มีข้อผิดพลาดก็จะทำการแปลโค้ดคำสั่งของเราให้เป็นไฟล์นามสกุล .obj (object file) จากนั้นก็ทำการแปลไฟล์ .obj ให้เป็นไบนารีไฟล์ .exe เพื่อทำงานต่อไป ดังตัวอย่างการทำงานของคอมไพเลอร์ภาษา C ดังรูป
โดยลักษณะของตัวแปลภาษานั้นแบ่งได้ 2 ประเภทใหญ่ ๆ คือ
1. คอมไพเลอร์ (Compiler) เป็นตัวแปลภาษาสำหรับภาษา C, C++, Pascal การทำงานก็คือจะตรวจสอบความผิดพลาดของโค้ดคำสั่งตั้งแต่ต้นจนจบก่อน หรือเรียกว่าการคอมไพล์ ถ้าไม่มีข้อผิดพลาดก็จะทำการแปลโค้ดคำสั่งของเราให้เป็นไฟล์นามสกุล .obj (object file) จากนั้นก็ทำการแปลไฟล์ .obj ให้เป็นไบนารีไฟล์ .exe เพื่อทำงานต่อไป ดังตัวอย่างการทำงานของคอมไพเลอร์ภาษา C ดังรูป
2. อินเตอร์พรีเตอร์ (Interperter) จะทำงานเป็นบรรทัดต่อบรรทัด คือ อ่านโค้ดคำสั่งมาบรรทัดหนึ่งแล้วก็ทำงานให้ผลออกมาเลย ดังแสดงในรูป
จากรูปตัวอย่างในกรณีที่มีการเรียกใช้ฟังก์ชั่นจากไลบรารี (Library) หรือโมดูล (Module) ของภาษา Python อินเตอร์พรีเตอร์ของภาษา Python ก็จะไปทำการเรียกฟังก์ชั่นเหล่านั้นให้ทำงานแล้วจึงแสดงผลการทำงานออกมาในส่วนของประสิทธิภาพการทำงานนั้นตัวแปลภาษาแบบคอมไพเลอร์จะทำงานได้เร็วกว่าตัวแปลภาษา แล ลอินเตอร์พรีเตอร์ เพราะโค้ดคำสั่งถูกคอมไพล์และลิงค์โดยตัวแปลภาษาแบบคอมไพเลอร์ผ่านแล้วได้ เป็นไฟล์ .exe ออกมา จากนั้นก็เป็นขั้นตอนการทำงานอย่างเดียว
เราจะเขียนโปรแกรมด้วย Python กันเลยค่ะ
เราจะเริ่มจาก การหาโปรแกรม Python มาใช้ ซึ่งคุณสามารถดาวน์โหลดได้จาก http://www.python.org/download/
เราลองมาเริ่มเขียนโปรแกรม Hello World ด้วย Python
1. เริ่มต้นเปิดโปรแกรมโดยกด Start >> Program >> Python 2.4 >> IDLE(Python GUI)
2. เมื่อ เปิดมา จะพบหน้าจอ Python Shell ซึ่งหน้าจอนี้ จะทำการ Run คำสั่งที่เราพิมพ์ลงไปแบบ Real Timeให้ลองพิมพ์โค๊ดภาษา Python เบื้องต้นแล้วกด Enter เช่น แล้วสังเกตผลลัพธ์
1 print "Hello world!"
2 1+2+3
3 import math
4 print math.log(8,2)
3.ลองกด Ctrl+N เพื่อเปิดหน้าใหม่ หรือกด File >> New Windows จะขึ้นหน้าจอเขียนโปรแกรมสำหรับ Python
พิมพ์คำสั่งลงไปดังนี้ print "Hello world!" แล้วกด Run >> Run Modules หรือกด F5 จะขึ้นหน้าจอให้บันทึกไฟล์โค๊ด ให้ทำการบันทึกไว้ที่ไหนก็ได้ แล้วโปรแกรมจะ Run Code ที่เราเขียนออกมาในหน้าจอ เป็นอันว่าจบโปรแกรม Hello World
Google และ NASA ยังใช้ Python แล้ววันนี้เรามีความเข้าใจและรู้จัก Python มากน้อยแค่ไหน เรามาศึกษาพร้อมๆ กันเลยดีกว่าค่ะ
แหล่งหาความรู้ที่เกี่ยวกับ Python ที่เป็นภาษาไทยก็ต้องเริ่มจากที่นี้เลยค่ะ
1. http://www.electoday.com/projects/nprotech/ ผู้แต่งหนังสือ การเขียนโปรแกรมภาษาไพธอนด้วยตนเอง ของ อาจารย์จักรกฤษณ์ แสงแก้ว ถ้าอยากมีพื้นฐานที่ดีควรหามาอ่าน
2. http://www.codenone.com/ ชุมชนชาว Python และ Ruby ที่นี่มีแต่ระดับเทพคอยช่วยตอบปัญหา
3. http://www.biolawcom.de/blog/tag/เขียนโปรแกรม ผู้ที่ใช้ Python ในการทำงาน
4.http://www.thaidev.com/board1/index.php?st=0&how=60&bn=board_python&Itemid=50อีกชุมชนหนึ่งของชาว Python
5. http://www.python.org/ ข้อมูลและข่าวสารทั้งหมดของ Pythonแต่เป็นภาษาอังกฤษ
ขอขอบคุณแหล่งอ้างอิงดังต่อไปนี้ค่ะ


