4.1
4.1
วิชา การเขียนโปรแกรม Python กลุ่มสาระการเรียนรู้ วิทยาศาสตร์และเทคโนโลยี
เรื่อง การสร้างฟังก์ชัน
ฟังก์ชัน (Function) คือส่วนของโค้ดหรือโปรแกรมที่ทำงานเพื่อวัตถุประสงค์บางอย่าง ในภาษา Python คุณสามารถสร้างฟังก์ชันของคุณเองเพื่อให้ทำงานที่ต้องการ ในการเขียนโปรแกรมเรามักจะแยกโค้ดที่มีการทำงานเหมือนๆ กันเป็นฟังก์ชันเอาไว้ และเรียกใช้ฟังก์ชันนั้นซ้ำๆ ซึ่งเป็นแนวคิดของการนำโค้ดกลับมาใช้ใหม่ (Code reuse) นี่เป็น
รูปแบบของการประกาศหรือสร้างฟังก์ชันในภาษา Python
def function_name(args...):
# statements
def function_name(args...):
# statements
return value
ในรูปแบบของการประกาศฟังก์ชันในภาษา Python นั้นจะใช้คำสั่ง def และหลังจากนั้น function_name เป็นชื่อของฟังก์ชัน และในวงเล็บ () เป็นการกำหนดพารามิเตอร์ของฟังก์ชัน พารามิเตอร์ของฟังก์ชันนั้นสามารถมีจำนวนเท่าไหร่ก็ได้หรือไม่มีก็ได้ และเช่นเดียวกับภาษาอื่นๆ ฟังก์ชันอาจจะมีหรือไม่มีการส่งค่ากลับ สำหรับฟังก์ชันที่ไม่มีการ return ค่ากลับนั้น เรามักจะเรียกว่า โพรซีเยอร์ (Procedure) ต่อไปมาดูตัวอย่างการประกาศและใช้งานฟังก์ชันในภาษา Python
# ฟังก์ชันไม่มีพารามิเตอร์
#Example01 การสร้างฟังก์ชันแสดงข้อมูลส่วนตัว
def show_infor():
print("My name is Yotin Siriaey")
print("My classroom is 229")
print("My number is 49")
อธิบาย :
บรรทัดที่ 1 สร้างฟังก์ชันชื่อ show_info()
บรรทัดที่ 2 แสดงข้อความ "My name is Yotin Siriaey"
บรรทัดที่ 3 แสดงข้อความ "My classroom is 229"
บรรทัดที่ 4 แสดงข้อความ "My number is 49"
# ฟังก์ชันไม่มีพารามิเตอร์
#Example02 การสร้างฟังก์ชันคำนวณพื้นที่สามเหลี่ยม
def traingle_area():
base = int(input("Input base : "))
high = int(input("Input high : "))
area = 0.5 * base * high
print("Area of Triangle is ",area)
อธิบาย :
บรรทัดที่ 1 สร้างฟังก์ชันชื่อ triangle_area()
บรรทัดที่ 2 รับค่าตัวเลขจำนวนเต็มเก็บไว้ที่ตัวแปร base
บรรทัดที่ 3 รับค่าตัวเลขจำนวนเต็มเก็บไว้ที่ตัวแปร high
บรรทัดที่ 4 คำนวณหาพื้นที่สามเหลี่ยมเก็บไว้ที่ตัวแปร area
บรรทัดที่ 5 แสดงผลลัพธ์ออกทางหน้าจอ
# ฟังก์ชันมีพารามิเตอร์
#Example03 การสร้างฟังก์ชันทักทาย
def hello(name):
print('Hello %s' % name)
อธิบาย : ฟังก์ชันมีชื่อว่า hello() เป็นฟังก์ชันสำหรับแสดงข้อความทักทายจากที่ชื่อส่งเข้ามา ฟังก์ชันนี้มีหนึ่งพารามิเตอร์คือ name สำหรับรับชื่อที่ส่งเข้ามาในฟังก์ชัน
# ฟังก์ชันมีพารามิเตอร์
#Example04 การสร้างฟังก์ชันนับจำนวนสระในภาษาอังกฤษ
def count_vowel(str):
vowel = 0
for c in str:
if c in ('A', 'E', 'I', 'O', 'U', 'a', 'e', 'i', 'o', 'u'):
vowel = vowel + 1
return vowel
อธิบาย : ฟังก์ชัน count_vowel() เป็นฟังก์ชันสำหรับนับจำนวนสระใน String ฟังก์ชันนี้มีหนึ่ง String พารามิเตอร์ ในการทำงานของฟังก์ชันนั้นเราใช้คำสั่ง For loop ในการวนอ่านค่าทีละตัวอักษรเพื่อตรวจสอบว่าเป็นสระหรือไม่ด้วยคำสั่ง in และตัวแปร vowel นั้นใช้สำหรับนับจำนวนสระที่พบใน String ในตอนท้ายเราได้ส่งค่าของจำนวนสระที่นับได้กลับไปด้วยคำสั่ง return
# ฟังก์ชันมีพารามิเตอร์ และมีการส่งค่าคืน
#Example05 การสร้างฟังก์ชันหาพื้นที่ของรูปสี่เหลี่ยมด้านขนาน
def area(width, height):
c = width * height
return c
อธิบาย : ฟังก์ชัน area() เป็นฟังก์ชันสำหรับหาพื้นที่ของรูปสี่เหลี่ยมด้านขนาน และฟังก์ชันมีพารามิเตอร์สองตัวสำหรับความกว้างและความยาวของสี่เหลี่ยม และฟังก์ชันทำการ return ผลลัพธ์ที่เป็นพื้นที่กลับไปด้วยคำสั่ง return
ถึงเวลาทดลองปฏิบัติเขียนโปรแกรมเพื่อแสดงความเข้าใจสักหน่อย
จงสร้างฟังก์ชันชื่อ print_my_info() โดยให้แสดงข้อมูล ชื่อ -นามสกุล ชื่อเล่น เลขที่ อายุ เบอร์โทรศัพท์ของตนเอง