python中filter(),reduce()函数
Posted 时间带着假象流淌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中filter(),reduce()函数相关的知识,希望对你有一定的参考价值。
filter()函数
是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 和一个list,这个函数的作用是对每个元素进行判断,返回 True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。
例如:要从一个list [1,3,4,5,6,7,9,10]中删除偶数,保留奇数,编写一个判断奇数的函数:
def is_odd(x): return x%2==1 a=list(filter(is_odd,[1,3,4,5,6,7,9,10])) print(a)
输出:
[1, 3, 5, 7, 9]
Process finished with exit code 0
Reduce函数
python中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 func()(必须是一个二元操作函数)先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果。
from functools import reduce#在python3中要通过functools导入reduce模块 def add(x,y): return x + y a=((reduce(add,[1,3,4,2]))) print(a)
输出:
10 #计算过程:1+3+4+2
Process finished with exit code 0
以上是关于python中filter(),reduce()函数的主要内容,如果未能解决你的问题,请参考以下文章
Python reduce / map / filter 函数区别
python内置函数filter(),map(),reduce()笔记