เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

Lambda functions

หากเคยใช้ฟังก์ชันในตระกูล *apply (เช่น sapply() และ lapply()) ใน R มาก่อน ก็น่าจะเคยใช้ anonymous function มาบ้างแล้ว ใน Python นั้น anonymous function เรียกว่า lambda function

ฟังก์ชันประเภทนี้ไม่ได้แตกต่างจากฟังก์ชันทั่วไปมากนัก เพียงแต่ใช้คีย์เวิร์ด lambda แทน def โดยทั่วไปจะใช้กับฟังก์ชันที่มีโค้ดเพียง 'บรรทัดเดียว'

ตัวอย่างเช่น ฟังก์ชันที่คืนค่ายกกำลังสามของตัวเลขสามารถเขียนได้ดังนี้:

cube_lambda = lambda x: x**3
print(cube_lambda(3))

27

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Python สำหรับผู้ใช้ R

ดูคอร์ส

คำแนะนำการฝึกหัด

  • แปลงฟังก์ชันปกติ sq_func() ให้เป็น lambda function แล้วตั้งชื่อว่า sq_lambda
  • ใช้ lambda function นั้นเพื่อพิมพ์ผลลัพธ์เมื่อส่งค่า 3 เข้าไปในฟังก์ชัน

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# A function that takes a value and returns its square
def sq_func(x):
    return(x**2)
    
# A lambda function that takes a value and returns its square
sq_lambda = ____ ____: ____

# Use the lambda function
print(____(____))
แก้ไขและรันโค้ด