Python-mapfilterreduce方法

Posted yangzhizong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-mapfilterreduce方法相关的知识,希望对你有一定的参考价值。

介绍

  1.map()函数,会让列表中每一个元素都执行一某个函数(传递1个参数),
并且将执行函数返回的结果(无论是什么结果)放在结果列表中
  2.filter()函数,会让列表中的每一个元素都执行一次某个函数(传递1
个参数),并且将执行函数返回为真或不为None的结果放在结果列表中
  3.reduce()函数,会将列表中的每两个元素执行一次函数(传递2个参数),
并且可以将前两个元素计算的结果拿过来,继续喝列表中的第三个元素计算,计算
完成后继续和第四个计算。。。最后返回的就是计算后的结果

 

map

例如:获取一个列表中的奇数

# map:拿到的是return结果列表
def
is_odd(n): return n % 2 == 1 # map:拿到的是return结果列表 odd_res=map(is_odd,[1,2,3,4,5,6]) print(list(odd_res)) #[True, False, True, False, True, False]

 

filter

例如:获取一个列表中的奇数

#filter:把传入的函数依次作用于每个元素,根据结果True还是False决定保留还是丢弃该元素
def is_odd(n):
    return n % 2 == 1
        
odd_res=filter(is_odd,[1,2,3,4,5,6])
print(list(odd_res)) #[1, 3, 5]

应用1:删除列表中空字符串

#应用:把列表中的空字符串删掉
def not_empty(s):
    return s and s.strip()  #s.strip()筛出不满足条件的

res=filter(not_empty, [A, ‘‘, B, None, C,   ])
print(list(res)) #[‘A‘, ‘B‘, ‘C‘]

 

reduce

 

以上是关于Python-mapfilterreduce方法的主要内容,如果未能解决你的问题,请参考以下文章

方法区永久代元空间

Java8内存模型—方法区 (old:永久代 new:元空间)

常量池perm(持久代)方法区栈

HotSpot Java虚拟机中的“方法区”“持久代”“元数据区”的关系?

JVM调优典型配置的5种方法!

MaOC线代使用方法介绍