在 Python 中使用 Lambda 函数 - filter()

使用 PySpark 的大数据基础

Upendra Devisetty

Science Analyst, CyVerse

什么是 Python 的匿名函数?

  • Lambda 函数是 Python 中的匿名函数

  • 功能强大,常与 map()filter() 高效配合

  • def 类似,用于创建稍后调用的函数

  • 返回无名称的函数(即匿名)

  • 可内联定义函数或延后执行代码

使用 PySpark 的大数据基础

Lambda 语法

  • Lambda 的通用形式为:
lambda arguments: expression
  • Lambda 示例
double = lambda x: x * 2
print(double(3))
6
使用 PySpark 的大数据基础

def 与 lambda 的区别

  • 计算立方的 Python 代码
def cube(x): 
     return x ** 3
g = lambda x: x ** 3
print(g(10)) 
print(cube(10))
1000
1000
  • Lambda 无 return 语句

  • Lambda 可放在任意位置

使用 PySpark 的大数据基础

在 Python 中使用 Lambda 函数 - map()

  • map() 将函数应用于输入列表的所有元素

  • map() 的通用语法

map(function, list)
  • map() 示例
items = [1, 2, 3, 4]
list(map(lambda x: x + 2 , items))
[3, 4, 5, 6]
使用 PySpark 的大数据基础

在 Python 中使用 Lambda 函数 - filter()

  • filter() 接收一个函数和一个列表,返回函数判断为 True 的新列表

  • filter() 的通用语法

filter(function, list)
  • filter() 示例
items = [1, 2, 3, 4]
list(filter(lambda x: (x%2 != 0), items))
[1, 3]
使用 PySpark 的大数据基础

Passons à la pratique !

使用 PySpark 的大数据基础

Preparing Video For Download...