ฟังก์ชันซ้อนใน Python
เพื่อย่นย่อโค้ด เราสามารถเรียกใช้ฟังก์ชันโดยการซ้อนฟังก์ชันไว้ภายในกันได้
สมมติว่ามีฟังก์ชันสำหรับยกกำลังสอง กำลังสาม และสำหรับหาผลรวมของตัวเลขสองตัว:
def square(num):
return num ** 2
def cube(num):
return num ** 3
def add(num1, num2):
return num1 + num2
เพื่อให้ได้ผลรวมของกำลังสองและกำลังสามของตัวเลข
เราสามารถซ้อนฟังก์ชันเหล่านั้นเข้าไปในพารามิเตอร์ของฟังก์ชัน add
เมื่อเรียกใช้:
res = add(square(2), cube(4))
print(res) # แสดงผล 68
นอกจากนี้ ยังสามารถเรียกใช้ฟังก์ชันภายในเนื้อหาของฟังก์ชันอื่นได้อีกด้วย
มาเขียนตัวอย่างก่อนหน้านี้ใหม่โดยเรียกใช้ฟังก์ชันภายใน
add:
def add(num1, num2):
return square(num1) + cube(num2)
res = add(2, 4)
print(res) # แสดงผล 68
สร้างฟังก์ชันสำหรับยกกำลังสอง และฟังก์ชันสำหรับหาค่ายกกำลังสามของตัวเลข จากนั้นใช้ฟังก์ชันเหล่านี้สร้างฟังก์ชันอีกหนึ่ง เพื่อแสดงผลค่ากำลังสามของกำลังสองของตัวเลข
สร้างฟังก์ชันที่ตรวจสอบประเภทของตัวแปร และถ้าตัวแปรเป็นสตริง ให้แสดงผลโดยขึ้นต้นด้วยตัวพิมพ์ใหญ่ และสร้างฟังก์ชันที่ทักทายผู้ใช้ด้วยชื่อ ซ้อนฟังก์ชันแรกเข้าไปในฟังก์ชันที่สอง เพื่อให้ชื่อถูกแสดงผลด้วยตัวอักษรตัวแรกเป็นพิมพ์ใหญ่เสมอ