การใช้ Lambda function ใน Python - filter()

Big Data Fundamentals with PySpark

Upendra Devisetty

Science Analyst, CyVerse

ฟังก์ชันนิรนามใน Python คืออะไร?

  • Lambda function คือฟังก์ชันนิรนามใน Python

  • ทรงพลังและนิยมใช้กันมาก โดยเฉพาะกับ map() และ filter()

  • Lambda function สร้างฟังก์ชันสำหรับเรียกใช้ภายหลัง คล้ายกับ def

  • คืนค่าฟังก์ชันโดยไม่มีชื่อ (นิรนาม)

  • ใช้นิยามฟังก์ชันแบบ inline หรือเลื่อนการประมวลผลโค้ดออกไป

Big Data Fundamentals with PySpark

ไวยากรณ์ของ Lambda function

  • รูปแบบทั่วไปของ Lambda function
lambda arguments: expression
  • ตัวอย่าง Lambda function
double = lambda x: x * 2
print(double(3))
6
Big Data Fundamentals with PySpark

ความแตกต่างระหว่าง def กับ Lambda function

  • โค้ด Python สำหรับคำนวณเลขยกกำลังสาม
def cube(x): 
     return x ** 3
g = lambda x: x ** 3
print(g(10)) 
print(cube(10))
1000
1000
  • Lambda ไม่มี return statement

  • ใช้ Lambda function ได้ทุกที่

Big Data Fundamentals with PySpark

การใช้ Lambda function ใน Python - map()

  • map() นำฟังก์ชันไปใช้กับทุกรายการในลิสต์

  • ไวยากรณ์ทั่วไปของ map()

map(function, list)
  • ตัวอย่าง map()
items = [1, 2, 3, 4]
list(map(lambda x: x + 2 , items))
[3, 4, 5, 6]
Big Data Fundamentals with PySpark

การใช้ Lambda function ใน Python - filter()

  • filter() รับฟังก์ชันและลิสต์ แล้วคืนค่าลิสต์ใหม่ที่ฟังก์ชันประเมินผลเป็น true

  • ไวยากรณ์ทั่วไปของ filter()

filter(function, list)
  • ตัวอย่าง filter()
items = [1, 2, 3, 4]
list(filter(lambda x: (x%2 != 0), items))
[1, 3]
Big Data Fundamentals with PySpark

มาฝึกกันเถอะ!

Big Data Fundamentals with PySpark

Preparing Video For Download...