บทที่ 5: ฟังก์ชัน (Functions)
5.2 การใช้พารามิเตอร์และการคืนค่าจากฟังก์ชัน (return)
พารามิเตอร์ (Parameters) และ การคืนค่า (Return Value) เป็นองค์ประกอบสำคัญของฟังก์ชันที่ช่วยให้เราสามารถส่งข้อมูลเข้าไปประมวลผลและรับค่ากลับจากฟังก์ชันได้ บทเรียนนี้จะอธิบายการใช้พารามิเตอร์ในฟังก์ชันและวิธีการคืนค่าผลลัพธ์กลับจากฟังก์ชันโดยใช้คำสั่ง return
1. การใช้พารามิเตอร์ในฟังก์ชัน
พารามิเตอร์คือข้อมูลที่ถูกส่งเข้าไปในฟังก์ชันเพื่อใช้ในการประมวลผล ฟังก์ชันสามารถรับพารามิเตอร์ได้หลายค่า เมื่อฟังก์ชันถูกเรียกใช้งาน ค่าที่ถูกส่งเข้ามาจะถูกเก็บในพารามิเตอร์และสามารถใช้งานภายในฟังก์ชันได้
ตัวอย่างการใช้พารามิเตอร์
def greet(name):
print("Hello,", name)
greet("Alice") # เรียกใช้ฟังก์ชันพร้อมส่งค่าพารามิเตอร์ "Alice"
อธิบาย: ในตัวอย่างนี้ ฟังก์ชัน greet(name) จะรับพารามิเตอร์ name และใช้ค่า "Alice" ที่ถูกส่งเข้ามาแสดงในข้อความทักทาย
2. การรับหลายพารามิเตอร์
ฟังก์ชันสามารถรับพารามิเตอร์ได้มากกว่าหนึ่งตัว โดยแยกพารามิเตอร์ด้วยเครื่องหมายจุลภาค
ตัวอย่างการรับหลายพารามิเตอร์
def add_numbers(a, b):
result = a + b
print("Sum:", result)
add_numbers(3, 5) # ส่งค่าพารามิเตอร์ 3 และ 5 เข้าฟังก์ชัน
อธิบาย: ฟังก์ชัน add_numbers(a, b) รับพารามิเตอร์สองตัวคือ a และ b และคำนวณผลรวมของทั้งสองตัวเลข จากนั้นแสดงผลลัพธ์ออกมา
3. การใช้ค่าพารามิเตอร์เริ่มต้น (Default Parameters)
หากฟังก์ชันมีพารามิเตอร์ที่มีค่าเริ่มต้น (default value) ค่าพารามิเตอร์นั้นจะถูกใช้หากไม่มีการส่งค่าเข้ามาในฟังก์ชัน
ตัวอย่างพารามิเตอร์ที่มีค่าเริ่มต้น
def greet(name="Guest"):
print("Hello,", name)
greet() # เรียกใช้ฟังก์ชันโดยไม่ส่งพารามิเตอร์
greet("Bob") # เรียกใช้ฟังก์ชันพร้อมส่งพารามิเตอร์ "Bob"
อธิบาย: ฟังก์ชัน greet(name) มีค่าเริ่มต้นคือ "Guest" ดังนั้นหากไม่ส่งค่าพารามิเตอร์เข้ามา ฟังก์ชันจะใช้ค่า "Guest" โดยอัตโนมัติ แต่ถ้าส่งค่าเข้ามา ฟังก์ชันจะใช้ค่านั้นแทน
4. การคืนค่าจากฟังก์ชัน (Return Value)
การคืนค่าเป็นวิธีที่ใช้ส่งผลลัพธ์กลับไปยังโปรแกรมหลักหลังจากฟังก์ชันทำงานเสร็จ คำสั่ง return จะใช้เพื่อคืนค่าจากฟังก์ชัน เมื่อ return ทำงาน ฟังก์ชันจะหยุดทำงานทันทีและส่งค่าที่ระบุใน return กลับไป
ตัวอย่างการคืนค่าจากฟังก์ชัน
def square(number):
return number ** 2
result = square(4)
print("Square of 4 is:", result)
อธิบาย: ฟังก์ชัน square(number) รับพารามิเตอร์ number และคืนค่าผลลัพธ์ของการยกกำลังสองของตัวเลขนั้น โดยฟังก์ชันจะส่งผลลัพธ์กลับไปเก็บในตัวแปร result
5. การคืนค่าหลายค่า
Python รองรับการคืนค่าหลาย ๆ ค่าในฟังก์ชันเดียว โดยฟังก์ชันสามารถคืนค่าเป็น tuple ซึ่งสามารถเก็บหลายค่าพร้อมกันได้
ตัวอย่างการคืนค่าหลายค่า
def calculate(a, b):
sum_result = a + b
difference = a - b
return sum_result, difference
add, sub = calculate(10, 5)
print("Sum:", add)
print("Difference:", sub)
อธิบาย: ฟังก์ชัน calculate(a, b) คืนค่าผลลัพธ์สองค่า คือผลรวมและผลต่าง โดยโปรแกรมหลักจะรับค่าที่คืนมาทั้งสองค่าและนำไปใช้งานต่อ
6. การใช้งานร่วมกับการประมวลผล
การใช้พารามิเตอร์และการคืนค่าจากฟังก์ชันช่วยให้โค้ดของเรามีความยืดหยุ่นและสามารถใช้งานซ้ำได้ ตัวอย่างเช่น ฟังก์ชันที่รับค่าพารามิเตอร์หลายตัวเพื่อทำการประมวลผลและคืนผลลัพธ์ให้กับโปรแกรมหลัก
ตัวอย่างการใช้งานจริง
def calculate_area(width, height):
return width * height
area = calculate_area(5, 10)
print("Area:", area)
อธิบาย: ฟังก์ชัน calculate_area(width, height) รับค่าพารามิเตอร์สองตัว และคืนค่าพื้นที่ของสี่เหลี่ยมโดยใช้สูตรความกว้างคูณกับความสูง
สรุป
การใช้พารามิเตอร์และการคืนค่าจากฟังก์ชันเป็นสิ่งสำคัญที่ช่วยให้เราสามารถสร้างฟังก์ชันที่ยืดหยุ่นและมีประสิทธิภาพมากขึ้น การส่งพารามิเตอร์ช่วยให้ฟังก์ชันรับข้อมูลจากภายนอกเพื่อทำการประมวลผล ส่วนการคืนค่าจากฟังก์ชันช่วยให้โปรแกรมหลักสามารถนำผลลัพธ์ไปใช้งานต่อได้อย่างสะดวก