码迷,mamicode.com
首页 > 其他好文 > 详细

map、filter、reduce函数

时间:2019-05-06 23:31:59      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:get   字典   you   序列   bsp   遍历   lte   with   span   

# 函数式编程
# map(函数,可迭代对象) #遍历序列中的每个元素,并使用函数执行,返回可迭代结果
# python2 中返回的是list   而在python3中需要使用list转换成列表
li = [1, 2, 5, 6, 3]
print(list(map(lambda x: x + 1, li)))  # 结果[2, 3, 6, 7, 4]

s = love you
print(list(map(lambda x: x.upper(), s)))  # 结果[‘L‘, ‘O‘, ‘V‘, ‘E‘, ‘ ‘, ‘Y‘, ‘O‘, ‘U‘]

# filter(函数,可迭代对象) # 当拿迭代的对象在函数中执行,若返回值为True,则保存函数返回值
print(list(filter(lambda x: x.startswith(o), s)))  # 结果[‘o‘, ‘o‘]

n = [1, 2, 3, 5]

from functools import reduce

# reduce(函数,可迭代对象) #返回一个结果:循环使用函数结果和下一个迭代器进行函数执行
print(reduce(lambda x, y: x + y, n))  # 运行过程为(((1+2)+3)+5)结果为11


#实现取出列表pp中的字典元素age小于100的结果,存放到list中
pp = [ {name: zs, age: 200}, {name: ls, age: 300}, {name: ww, age: 180}, {name: aa, age: 20}, {name: bb, age: 80} ] def less_100(n): return n.get(age) < 100 # d = {‘name‘: ‘ww‘, ‘age‘: 180} # print(less_100(d)) print(list(filter(lambda x: less_100(x), pp))) print(list(filter(lambda x: x[age] <= 100, pp)))

 

map、filter、reduce函数

标签:get   字典   you   序列   bsp   遍历   lte   with   span   

原文地址:https://www.cnblogs.com/wjlv/p/10822745.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!