python函数式编程相关

map与lambda结合使用
r=map(lambda x:xx,list_x)求list_x中所有元素的平方和;
多个参数时:
r=map(lambda x,y:x
x+y,list_x,list_y)
当list_x,list_y值的数量不相同时,map会偏向数值少的那个

from functools import reduce
reduce模块,连续计算,连续调用lambda
list_x=[1,2,3,4,5,6]
r=reduce(lambda x,y:x+y,list_x)
print®
会取列表中的前两个元素,第二次调用时,会将第一次运算的结果当作第二次的x传入,y取第三个元素
((((1+2)+3)+4)+5)
r=reduce(lambda x,y:x+y,list_x,10) 这个10是初始值,第一次计算lambda时传入lambda中的x,即第一次是10+1

filter过滤不需要的元素
list_x=[1,0,1,0,0,1]
r=filter(lambda x:True if x==1 else False,list_x)
或r=filter(lambda x:x,list_x)
filter是一个集合(与map相似)
print(list®)
filter要求lambda必须返回可以表示真假的结果(或能表示真假的值0,1)
list_u=[‘a’,‘B’,‘c’,‘D’]
python判断大小写的函数
isupper()判断是否全大写,islower判断是否全小写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值