博客
关于我
高阶函数-语法糖-lambda(三分钟读懂)
阅读量:344 次
发布时间:2019-03-04

本文共 1343 字,大约阅读时间需要 4 分钟。

匿名函数 lambda 函数表达式

1.lambda函数表达式专门用来创建一些简单的函数,他是函数创建的又一种方式

2.语法:lambda 参数列表 : 返回值
3.匿名函数一般都是作为参数使用,其他地方一般不会使用

高阶函数

(符合一个即可)
① 接收一个或多个函数作为参数
② 将函数作为返回值返回

例一

语法:(lambda a,b : a + b)(参数)

def fn1(a,b):    return a + b    fn2 = lambda a,b : a + b # 语法:lambda 参数列表 : 返回值                # fn1 和fn2 的功能是一样的print(fn1)      # 执行返回为 
说明这是一个函数print(fn2) # 执行返回为
at 0x02CCF460> 说明这是一个函数 只是赋值给了fn2 显示的内存地址为fn2罢了print(lambda a,b : a + b) # 执行返回为
at 0x0160F418> 说明这是一个函数print(fn1(2,3)) # 执行返回为 5 print(fn2(2,3)) # 执行返回为 5 print((lambda a,b : a + b)(2,3)) # 执行返回为 5

例二:

在列表中筛选 filter(lambda x : x % 2 == 0,i)

在列表中做指定的操作 map(lambda i : i + 1 , x)

# 在列表中筛选i = [1,2,3,4,5,6,7,8,9,10]a = filter(lambda x : x % 2 == 0,i)#  一般不这么用  尽量少写代码 print(list(a))                  # 执行返回为 [2, 4, 6, 8, 10]# 在列表中做指定的操作x = [1,2,3,4,5,6,7,8,9,10]a = map(lambda i : i ** 3 , x)b = map(lambda i : i + 1 , x)print(list(a))# 执行返回为 [1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]print(list(b))# 执行返回为 [2, 3, 4, 5, 6, 7, 8, 9, 10, 11]print(a) # 执行返回为  #需要使用print() 才能查看print(b) # 执行返回为  #需要使用print() 才能查看# map()# map()函数可以对可跌倒对象中的所有元素做指定的操作,然后将其添加到一个新的对象中返回# filter()# filter()可以从序列中过滤出符合条件的元素,保存到一个新的序列中# 参数:(1.函数,根据该函数来过滤序列(可迭代的结构),2.需要过滤的序列(可迭代的结构))# 返回值:过滤后的新序列(可迭代的结构)

转载地址:http://tzke.baihongyu.com/

你可能感兴趣的文章
Nginx反向代理及负载均衡实现过程部署
查看>>
Nginx反向代理是什么意思?如何配置Nginx反向代理?
查看>>
nginx反向代理解决跨域问题,使本地调试更方便
查看>>
Nginx反向代理配置
查看>>
Nginx启动SSL功能,并进行功能优化,你看这个就足够了
查看>>
nginx启动脚本
查看>>
Nginx在Windows上和Linux上(Docker启动)分别配置基本身份认证示例
查看>>
Nginx在Windows下载安装启动与配置前后端请求代理
查看>>
Nginx多域名,多证书,多服务配置,实用版
查看>>
nginx如何实现图片防盗链
查看>>
Nginx学习总结(12)——Nginx各项配置总结
查看>>
Nginx学习总结(13)——Nginx 重要知识点回顾
查看>>
Nginx学习总结(14)——Nginx配置参数详细说明与整理
查看>>
nginx学习笔记002---Nginx代理配置_案例1_实现了对前端代码的方向代理_并且配置了后端api接口的访问地址
查看>>
Nginx安装SSL模块 nginx: the “ssl” parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx
查看>>
Nginx安装与常见命令
查看>>
Nginx安装及配置详解
查看>>
nginx安装配置
查看>>
Nginx实战经验分享:从小白到专家的成长历程!
查看>>
Nginx实现反向代理负载均衡
查看>>