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

原文地址:https://www.cnblogs.com/ConnorShip/p/10004207.html

时间: 2024-09-30 11:54:13

python中filter(),reduce()函数的相关文章

python进阶一(函数式编程)【2-3 python中的reduce函数】

2-3 python中的reduce函数 python中reduce()函数 reduce()函数也是Python内置的一个高阶函数.reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接收两个参数,reduce()对list的每个元素反复调用函数f,并返回最终结果值. 例如,编写一个f函数,接收x和y,返回x和y的和: 1 def f(x, y): 2 return x + y 调用 reduce(f, [

python中filter,reduce,map的用法

filter的用法: 操作表list的内嵌函数'filter' 需要一个函数与一个list它用这个函数来决定哪个项应该被放入过滤结果队列中遍历list中的每一个值,输入到这个函数中如果这个函数返回True, 那么值就放到过滤结果队列中去如果这个函数返回 False,那么这个值就会被跳过 def pick_num(x): if x%3==0: return x r=[2,4,6,8,10] result=list(filter(pick_num,r)) reduce用法: 操作表list的内嵌函数

python中filter、map、reduce的区别

python中有一些非常有趣的函数,今天也来总结一下,不过该类的网上资料也相当多,也没多少干货,只是习惯性将一些容易遗忘的功能进行整理. lambda 为关键字.filter,map,reduce为内置函数. lambda:实现python中单行最小函数. g = lambda x: x * 2 #相当于 def g(x): return x*2 filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的ite

python中filter函数

python中filter()函数 filter()函数是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list. 例如,要从一个list [1, 4, 6, 7, 9, 12, 17]中删除偶数,保留奇数,首先,要编写一个判断奇数的函数: def is_odd(x): return x %

python中有趣的函数

filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决于sequence的类型)返回: >>> def f(x): return x % 2 != 0 and x % 3 != 0 >>> filter(f, range(2, 25)) [5, 7, 11, 13, 17, 19, 23] >>> def f

python的filter,reduce,map

1.filter filter(func,iter) 只能处理一个参数(iter),仅仅将满足func方法的数值过滤出来 如: a = [1,2,3,4,5] list(filter(lambda x:x>2,a)) 输出结果为: [3,4,5] map(func,iter1,iter2,..) 可以处理多个iter,实现通过func方法对iter1,iter2,..进行处理 2.reduce python中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数

Python中关于Lambda函数的使用总结

lambda表达式是一种匿名函数,对应python中的自定义函数def,是定义某个函数时比较高级的一种写法.作为python初学者,本文整理了lambda的一些基本用法和特点. lambda和def的对应关系 定义func函数,计算给定数x的平方 def func(x): return x*x 等价于 func = lambda x: x*x 其中func是函数名,x是输入参数,x*x是输出结果 输入参数可以有多个,可以接收不定参数如*args或者**kwargs. f = lambda x,

python中的reduce

python中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 func()(必须是一个二元操作函数)先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果. >>> def Reduce(x,y): ... return x*y ... >>> list ['ab', 'c', 'd', 'ef', 'gh'] >>> li

举例详解Python中的split()函数的使用方法

这篇文章主要介绍了举例详解Python中的split()函数的使用方法,split()函数的使用是Python学习当中的基础知识,通常用于将字符串切片并转换为列表,需要的朋友可以参考下 函数:split() Python中有split()和os.path.split()两个函数,具体作用如下:split():拆分字符串.通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)os.path.split():按照路径将文件名和路径分割开 一.函数说明1.split()函数语法:str.