ฟังก์ชัน (function) เป็นโปรแกรมย่อยที่เขียนขึ้นเพื่อให้ทำงานเฉพาะตามที่กำหนด ผู้เขียนโปรแกรมสามารถเรียกไช้ฟังก์ชันได้สะดวกโดยไม่ต้องเขียนคำสั่งซ้ำอีก ทำให้การเขียนโปรแกรมขนาดใหญ่ทำได้รวดเร็วและตรวจสอบความถูกต้องของไปรแกรมได้ง่ายขึ้น
Python มีฟังก์ชันให้ใช้งานป็นจำนวนมาก นักเรียนเคยใช้งานมาแล้วหลายคำสั่ง เช่น input (), print (),int (), float() และ type() เป็นต้น การใช้งานฟังก์ชันทำได้โดยเรียกชื่อฟังก์ชันพร้อมกับส่งคำของข้อมูลตามจำนวนที่ฟังชั่นกำหนด เช่น
print (‘area =’, area) เป็นการเรียกฟังก์ชัน print() ที่ส่งค่าสตริง ‘area =’ และค่าของตัวแปร area เมื่อฟังก์ชัน print() ทำงาน ก็จะพิมพ์ค่าที่ส่งให้ออกมาทางจอภาพ ตามลำดับจากซ้ายไปขวา
ฟังก์ชัน turtle
Python มีฟังก์ชัน turtle ซึ่งต่อยอดจากภาษา logo โดยจะมีในโปรแกรม Python เวอร์ชั่น Python 2.6 เป็นต้นมา สำหรับใช้ฝึกเขียนโปรแกรมขั้นเริ่มต้นโดยใช้เต่าในการลากเส้นหรือวาดรูป ซึ่งนักเรียนจะได้ฝึกหัดการใช้งานดังนี้
turtle.Turtle() เป็นคำสั่งสำหรับดึงคำสั่งต่าง ๆ ที่เกี่ยวกับการวาดรูปมาทำงาน มักใช้ตัวแปรแทนคำสั่งนี้
turtle.forward() ลากเส้นตรงไปข้างหน้ามีหน่วยเป็นพิกเซล
turtle.left() หันไปทางขวา ทำมุมตามองศาที่กำหนดจากมุมเดิม
turtle.right() หันไปทางซ้าย ทำมุมตามองศาที่กำหนดจากมุมเดิม
turtle.color() เป็นคำสั่งกำหนดสีให้กับเส้น (ชื่อสีในภาษาอังกฤษ)
turtle.mainloop() เป็นคำสั่งลูปค้างหน้าจอไว้สำหรับรอวาดรูปต่อ
t.circle() วาดรูปวงกลม
t.color(“red”) วาดเส้นสีแดง
ศึกษาคำสั่งวาดรูปด้วยเต่า python คลิกที่นี่
จากตัวอย่างการใช้ฟังก์ชัน turtle ในการสร้างภาพสี่เหลี่ยม ให้นักเรียนใช้พื้นที่เขียนโปรแกรมด้านล่างนี้ เขียนโปรแกรมวาดรูปอะไรก็ได้ โดยไม่ซ้ำแบบกัน และส่งโค้ดโปรแกรมในแบบฟอร์มที่เตรียมไว้ด้านล่าง
เพื่อเป็นการป้องกันการคัดลอกผลงานกัน กิจกรรมนี้จึงไม่มีปุ่มตรวจสอบผลการส่งงาน ครูผู้สอนจะดำเนินการตรวจสอบเองครับ
สรุปการแก้ปัญหาด้วย Python การโปรแกรมด้วย Python มีคำสั่ง if if-else สำหรับการทำงานแบบมีทางเลือก นอกจากนี้ยังมีคำสั่งสำหรับการทำงานที่มีหลายเงื่อนไข หรือ if เชิงซ้อน ได้แก่ คำสั่ง if-elif-else และยังมีตัวดำเนินการบูลีนที่ใช้ในนิพจน์เปรียบเทียบสำหรับกำหนดเงื่อนไขที่ชับซ้อนขึ้น ได้แก่ and or และ not และคำสั่งสำหรับการทำงานแบบวนซ้ำ ได้แก่ for ใช้สำหรับการทำงานที่ทราบจำนวนรอบ และ while ใช้ในกรณีที่ไม่ทราบจำนวนรอบที่แน่นอน นอกจากนี้ผู้เขียนโปรแกรมยังสามารถสร้างฟังก์ชัน และโปรแกรมย่อยให้ทำงานเฉพาะตามที่กำหนด เพื่อให้สามารถเรียกใช้งานได้โดยไม่ต้องเขียนขุดคำสั่งเดิมซ้ำอีก ทำให้สร้างโปรแกรมขนาดใหญ่ได้รวดเร็วและตรวจสอบความถูกต้องของโปรแกรมได้ง่ายขึ้น