movie_person = ['小红','小明','小王','富豪_sb','美女_sb']

def filter_test(array):
ret = []
for i in array:
if not i.startswith('小'): # 以‘小’开头的
ret.append(i)
return ret
print(filter_test(movie_person)) def filter_test(array):
res = []
for i in array:
if not i.endswith('sb'): # 以‘sb’结尾的
res.append(i)
return res
print(filter_test(movie_person))

运行结果:

['富豪_sb', '美女_sb']
['小红', '小明', '小王'] Process finished with exit code 0

或另一种简单的方法:

movie_person = ['小红','小明','小王','富豪_sb','美女_sb']

def filter_test(func,array):
ret = []
for i in array:
if not func(i):
ret.append(i)
return ret res = filter_test(lambda x:x.endswith('sb'),movie_person) # 以‘sb’结尾的
print(res)

运行结果:

['小红', '小明', '小王']

Process finished with exit code 0

reduce函数

1.加法和乘法(两种方法)

from functools import reduce            # 调用 reduce函数

num_1 = [1,2,3,4,5,6,7,8,9,100]

def reduce_test(array):
res = 0
for num in array:
res += num
return res
print(reduce_test(num_1)) def reduce_test(func,array):
res = array.pop(0) # 将列表的值一个一个传值
for num in array:
res =func(res,num)
return res
print(reduce_test(lambda x,y:x*y,num_1)) # 用lambda 进行乘法运算

运行结果:

145
36288000 Process finished with exit code 0

2.传一个初始值

from functools import reduce            # 调用 reduce函数

num_1 = [1,2,3,4,5,6,7,8,9,100]

def reduce_test(func,array,init = None):
if init is None:
res = array.pop(0)
else:
res = init
for num in array:
res = func(res,num)
return res
print(reduce_test(lambda x,y:x*y,num_1,100)) # 传了一个初始值100,以100开始乘以列表里的每个数

运行结果:

3628800000

Process finished with exit code 0

python学习-29 map函数-filter函数的更多相关文章

  1. Python 有用的 map() deduce() filter() 函数

    #!/usr/bin/python#5!+4!+3!+2!+1! #give 3 return 3*2*1def jiechen(n): N = map(lambda x:x+1,range(n)) ...

  2. python中的map、filter、reduce函数

    三个函数比较类似,都是应用于序列的内置函数.常见的序列包括list.tuple.str.   1.map函数 map函数会根据提供的函数对指定序列做映射. map函数的定义: map(function ...

  3. python学习三十九天filter() map()用法及lambda搭配使用

    python函数中的 filter() map() 前者是过滤的,后者是映射关系,需要与函数搭配使用,这时候匿名函数派上用场了,用简单的表达式就可以显示比较复杂的功能 1,python函数 filte ...

  4. python一些内建函数(map,zip,filter,reduce,yield等)

    python一些内建函数(map,zip,filter,reduce,yield等) map函数 Python实际上提供了一个内置的工具,map函数.这个函数的主要功能是对一个序列对象中的每一个元素应 ...

  5. Python学习十四:filter()

    Python 中内置了filter()函数用于过滤序列. 使用方法: filter()接收一个函数和一个序列. filter()把传入的函数依次作用于每一个元素,然后依据返回值是True还是False ...

  6. Python学习 Day 5 高阶函数 map/reduce filter sorter 返回函数 匿名函数 装饰器 偏函数

    高阶函数Higher-orderfunction 变量可以指向函数 >>> abs #abs(-10)是函数调用,而abs是函数本身 <built-in function ab ...

  7. Python学习(七)——匿名函数、map函数、filter函数、reduce函数与其他内置函数

    匿名函数 lambda x: x + 1 # lambda:定义匿名函数的关键字 # x:形参 # x+1:程序处理逻辑 fun = lambda x: x + 1 print(fun(5)) #6 ...

  8. Python学习笔记系列——高阶函数(filter/sorted)

    一.filter #filter()函数用于过滤序列.和map()类似,也接收一个函数和一个序列,把函数依次作用于每个元素,根据返回值是True还是False决定是否保留该元素. #filter()函 ...

  9. python中lambda,map,reduce,filter,zip函数

    函数式编程 函数式编程(Functional Programming)或者函数程序设计,又称泛函编程,是一种编程范型,它将计算机运算视为数学上的函数计算,并且避免使用程序状态以及易变对象.简单来讲,函 ...

随机推荐

  1. benchmarkdotnet dotnet 基准测试类库试用(一)

    使用基准测试对于我们应用的性能优化是比较好的方式,可以快速看出优化的结果同时可以给出报告结果 benchmarkdotnet 是dotnet 版本的一个工具,以下是一个简单的试用 环境准备 我使用的是 ...

  2. JS对象创建模式

    JS的对象创建模式 1.Object构造函数模式 var person = new Object(); person.name = 'name'; person.age = 43; console.l ...

  3. hive基础知识一

    1. Hive是什么 1.1 hive的概念 Hive:由Facebook开源,用于解决海量(结构化日志)的数据统计. Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表 ...

  4. CSS注册页面案例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. NOI2019 Day1游记

    Day1挂了,没什么好说的... 开场T1想到70分暴力就走人了,后来发现可以写到85...(听说有人写dfs过了95?233333) T2刚了2个多小时,得到每次只在中间填最大值的结论后不会区间DP ...

  6. 几种npm install 的区别

    一个node package有两种依赖,一种是dependencies,一种是devDependencies,其中前者依赖的项该是正常运行该包时所需要的依赖项,而后者则是开发的时候需要的依赖项,像一些 ...

  7. javaScript 迭代器

    for ...of 语句 "use strict"; var name = ['a','b','c']; var mark = [1, 2, 3]; for(var i of na ...

  8. fiddler实现B/S端、APP抓包分析遇到的各种疑问

    阅读本文前您需要先下载fiddler并成功安装,并且要有一丢丢测试和接口基础或者在学习fidder时遇到了问题,或许本文可以帮助到你 一.B/S端抓包 Fiddler设置 1. 官网下载fiddler ...

  9. [Shell]多姿势反弹shell

    客户端监听本地: nc -nvlp 4444 从原生的 shell 环境切换到 linux 的交互式 bash 环境: python -c 'import pty; pty.spawn("/ ...

  10. Parquet介绍及简单使用(转)

    ==> 什么是parquet         Parquet 是列式存储的一种文件类型   ==> 官网描述: Apache Parquet is a columnar storage f ...