博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中的lambda匿名函数
阅读量:3934 次
发布时间:2019-05-23

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

一、什么是匿名函数

       匿名函数通俗的讲就是没有名字的函数,是一种简单、在同一行中定义的函数。

匿名函数构造简单,不需要把函数提取出来放到外面单独列出来,这也是为什么使用其的原因。

二、匿名函数的格式: lambda arg1,arg2,arg3… :<表达式>

lambda arg1,arg2,arg3… :<表达式>

函数输入:

功能 对应函数中的内容
函数输入 arg1/arg2/arg3……
函数主体 <表达式>
运算结果 表达式的运算结果

例子:

lambda x,y : x*y              函数输入x,y,输出x和y的乘积

a = lambda x : x*2print(a(3))		#输出6
a = [lambda x:x+2,lambda x:x*2]print(a[0](3),a[1](3))		#输出5,6

三、例题考察(学习的时候拧螺丝,做题需要造大炮,答案在最后)

基础题:

1、下面这段代码会有什么效果呢?

time.sleep=lambda x:Nonetime.sleep(3)

2、下面这段代码输出是什么?

add=lambda x, y: x+yprint(add(1,2))

进阶题:

1、求返回值

sorted([1, 2, 3, 4, 5, 6, 7, 8, 9], key=lambda x: abs(5-x))

2、求返回值

list(filter(lambda x: x % 3 == 0, [1, 2, 3]))

3、求返回值

list(map(lambda x: x+1, [1,2,3]))

四、答案

基础题:

1、程序不会进行3秒钟的休眠操作
2、输出3

进阶题:

1、解答:
sorted(iterable[, cmp[, key[, reverse]]])
s.sort([cmp[, key[, reverse]]])中参数的含义:

  • cmp 为用户定义的任何比较函数,函数的参数为两个可比较的元素(来自 iterable或者 list),函数根据第一个参数与第二个参数的关系依次返回 -1、0 或者 +1(第一个参数小于第二个参数则返回负数)。该参数默认值为 None
  • key 是带一个参数的函数,用来为每个元素提取比较值,默认为 None(即直接比较每 个元素)
  • reverse 表示排序结果是否反转

sorted([1, 2, 3, 4, 5, 6, 7, 8, 9], key=lambda x: abs(5-x))是将每一个元素拿去计算得出和5的差距,然后再排序,所以含义就是计算每一个元素到5的距离从小到大的排序。返回值应该是[5, 4, 6, 3, 7, 2, 8, 1, 9]

2、解答:

filter是过滤器,过滤出能被3整除的数,注意如果没有 list() 类型转换将返回一个可迭代对象,这里返回值应该是[3]

3、解答:

返回[2, 3, 4]

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

你可能感兴趣的文章
word文档不能显示图片的处理
查看>>
linux的多桌面环境Xephyr
查看>>
初探debian桌面的管理启动
查看>>
七层协议图
查看>>
华为交换机作为AC的条件
查看>>
禁用Ubuntu 15.04登录界面显示客人会话(简单-实用)
查看>>
linux X下安装的软件
查看>>
Linux监测某一时刻对外的IP连接情况
查看>>
CentOS7 最小环境安装Jumpserver 1.0版脚本
查看>>
X-Security X的安全控制
查看>>
openVAS的安装
查看>>
Centos 6.5 初始安装无网卡驱动解决方法
查看>>
linux中的网桥bridge
查看>>
linux中的teaming与bonding
查看>>
LVM
查看>>
用shell切分文件--split
查看>>
python中判断字符是否为中文
查看>>
Python - 利用zip函数将两个列表(list)组成字典(dict)
查看>>
python-全角转半角
查看>>
Python pass语句作用与用法
查看>>