python lambda函数

一、lambda函数介绍
1.概念:
匿名函数,即没有具体名称的函数
 
2.语法:
lambda 形式参数 : 函数表达式
以求x的平方为例
g = lambda x:x**2  (或(lambda i:i**2)(5))
print g(4)
查看返回结果:
 
3.作用:
省去了定义函数的过程,精简代码,对于不会复用的函数不需要考虑函数命名的问题
 
二、lambda函数进阶用法
1.lambda函数与if-else语句结合使用:
num_is_up3 = lambda x: 'up' if x>=3 else 'down'
print(num_is_up3(3))
print(num_is_up3(1))
查看运行结果:
 
2.lambda函数与filter函数结合使用:
list_num = [33,3,2,11,4,9,7,15]
list_after = filter(lambda x:x>10,list_num)
print(list(list_after))
查看运行结果:
 
3. lambda函数与map函数结合使用:
list1 = [1, 2, 3, 4, 5]
list2 = map(lambda x: x**2, list1)
print(list(list2))
查看运行结果:
 
4. lambda与reduce函数结合使用:
from functools import reduce
res = reduce( (lambda x, y: x * y), [1, 2, 3, 4] )
print(res)
查看运行结果:
 
5.lambda在pandas中的使用
import pandas as pd
df = pd.DataFrame({'Age': [22, 21, 22, 21, 20], 'Score': [87, 66, 79, 54, 59]})
df['Pass'] = df.apply(lambda x: 'pass' if x[1]>=60 else 'Not pass', axis=1)
print(df)
查看运行结果:
 
posted @ 2022-07-20 23:31  Mrwhite86  阅读(1563)  评论(0编辑  收藏  举报