5 เมษายน 2558

Published เมษายน 05, 2558 by with 0 comment

สร้างฟังก์ชันไม่ระบุชื่อด้วย lambda ใน Python

ตามหลักไวยากรณ์ในภาษา Python เราสามารถสร้างฟังก์ชันไม่ระบุชื่อ (anonymous functions) ได้ด้วยฟังก์ชัน lambda หรือชื่อในภาษาไทยคือ "แลมบ์ดา" ครับ


นิพจน์แลมบ์ดา (Lambda expressions) จะใช้ในการสร้างฟังก์ชันที่ไม่ระบุชื่อ (anonymous functions) อาร์กิวเมนต์นิพจน์แลมบ์ดา: นิพจน์ที่ทำให้ฟังก์ชันของวัตถุที่มาทำงาน มีชื่อไม่เหมือนฟังก์ชันของวัตถุที่กำหนดด้วย มีการใช้งานในแบบฟังก์ชันดังนี้ครับ
def <lambda>(arguments):
  return expression

เราสามารถกำหนด arguments ให้มีกี่ตัวก็ได้ครับ แต่ผลลัพธ์ที่ถูกส่งออกมาจาก return จะส่งออกมาได้แค่ค่าเดียวเท่านั้นครับ
ตัวอย่างเช่น
และเราสามารถย่อนิพจน์แลมบ์ดา (Lambda expressions) ให้กลายเป็นฟังก์ชันขนาดเล็กลงเป็นอาร์กิวเมนต์ได้ดังนี้
lambda arguments: expression

ตัวอย่างเช่น
>>> a = lambda x,n: x * n
>>> a(9,8)
72
>>> a(-1,2)
-2

นอกจากนั้น หากเราไม่ต้องการให้มี arguments เราไม่ต้องใส่ arguments ลงไปได้เหมือนกันครับ

ตัวอย่างเช่น
>>> x = lambda: 5*2
>>> y = x()
>>> print(y)
10
ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)