Devdit
 

Python def ซ้อน def

1.5K

Python def ซ้อน def คือ การเขียนฟังก์ชันซ้อนฟังก์ชัน (Nested Function) หลักการคือเราจะเขียนฟังก์ชันหลัก และมีฟังก์ชันย่อยภายในฟังก์ชันหลักดังกล่าว ประโยชน์เช่น หลีกเลี่ยงการเขียนโค้ดซ้ำซ้อนกัน และเพื่อจัดการกับข้อมูลภายในฟังก์ชันได้ดียิ่งขึ้น มีรายละเอียดดังนี้

 

ตัวอย่าง Python def ซ้อน def แบบที่ 1

def main_function():
    def sub_function():
        print("Hello sub_function")
    
    sub_function()

main_function()

จากตัวอย่างสร้างฟังก์ชันหลักชื่อ main_function และภายในมีฟังก์ชันย่อยชื่อ sub_function ทำหน้าที่พิมพ์ข้อความ “Hello sub_function” เวลาเรียกใช้งานใช้ผ่าน main_function()

 

ตัวอย่าง Python def ซ้อน def แบบที่ 2 มีการรับค่าพารามิเตอร์

def main_function(number):
    def sub_function(x):
        return x ** 2
    
    return sub_function(number)

print( main_function(2) )
print( main_function(4) )
print( main_function(6) )

ผลลัพธ์

4
16
36

จากตัวอย่างชันหลักชื่อ main_function รับค่าพารามิเตอร์ชื่อ number และเรียกใช้ฟังก์ชันย่อยชื่อ sub_function รับค่าตัวแปร number จากฟังก์ชันหลัก และ return ค่าออกมาเป็นเลขยกกำลังของตัวแปร number ที่ส่งเข้าไปในฟังก์ชัน ได้ผลลัพธ์เท่ากับ 4

สรุป บทความนี้เราได้เรียนรู้ว่า Python def ซ้อน def คืออะไร พร้อมตัวอย่างการเขียนโค้ด 2 ตัวอย่างทั้งแบบไม่มี และมีการรับค่าพารามิเตอร์ พร้อมคำอธิบายโค้ด และผลลัพธ์จากการทำงานของโปรแกรม

แก้ไข 1 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ