Python中的匿名函数使用简介


Posted in Python onApril 27, 2015

当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便。

在Python中,对匿名函数提供了有限支持。还是以map()函数为例,计算f(x)=x2时,除了定义一个f(x)的函数外,还可以直接传入匿名函数:

>>> map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9])
[1, 4, 9, 16, 25, 36, 49, 64, 81]

通过对比可以看出,匿名函数lambda x: x * x实际上就是:

def f(x):
  return x * x

关键字lambda表示匿名函数,冒号前面的x表示函数参数。

匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果。

用匿名函数有个好处,因为函数没有名字,不必担心函数名冲突。此外,匿名函数也是一个函数对象,也可以把匿名函数赋值给一个变量,再利用变量来调用该函数:

>>> f = lambda x: x * x
>>> f
<function <lambda> at 0x10453d7d0>
>>> f(5)
25

同样,也可以把匿名函数作为返回值返回,比如:

def build(x, y):
  return lambda: x * x + y * y

小结

Python对匿名函数的支持有限,只有一些简单的情况下可以使用匿名函数。

Python 相关文章推荐
Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
Mar 06 Python
解决Pycharm界面的子窗口不见了的问题
Jan 17 Python
用Python中的turtle模块画图两只小羊方法
Apr 09 Python
Python中单线程、多线程和多进程的效率对比实验实例
May 14 Python
详解Python字符串切片
May 20 Python
Python中的几种矩阵乘法(小结)
Jul 10 Python
Pytorch修改ResNet模型全连接层进行直接训练实例
Sep 10 Python
Python3创建Django项目的几种方法(3种)
Jun 03 Python
Python图像处理二值化方法实例汇总
Jul 24 Python
python playwright 自动等待和断言详解
Nov 27 Python
python 离散点图画法的实现
Apr 01 Python
使用Python获取字典键对应值的方法
Apr 26 Python
Python中用函数作为返回值和实现闭包的教程
Apr 27 #Python
Python中利用sorted()函数排序的简单教程
Apr 27 #Python
Python中的filter()函数的用法
Apr 27 #Python
Python中的map()函数和reduce()函数的用法
Apr 27 #Python
PyMongo安装使用笔记
Apr 27 #Python
Windows下PyMongo下载及安装教程
Apr 27 #Python
Python操作MongoDB数据库PyMongo库使用方法
Apr 27 #Python
You might like
php扩展ZF――Validate扩展
2008/01/10 PHP
discuz论坛 用户登录 后台程序代码
2008/11/27 PHP
php批量删除数据库下指定前缀的表以prefix_为例
2014/08/24 PHP
PHP入门教程之PHP操作MySQL的方法分析
2016/09/11 PHP
php实现当前页面点击下载文件的实例代码
2016/11/16 PHP
PHP 中魔术常量的实例详解
2017/10/26 PHP
PHP实现分布式memcache设置web集群session同步的方法
2018/04/10 PHP
PDO::getAvailableDrivers讲解
2019/01/28 PHP
JavaScript下利用fso判断文件是否存在的代码
2010/12/11 Javascript
jquery中dom操作和事件的实例学习 下拉框应用
2011/12/01 Javascript
javascript 密码框防止用户粘贴和复制的实现代码
2014/02/17 Javascript
js操作数据库实现注册和登陆的简单实例
2016/05/26 Javascript
javascript 广告移动特效的实现代码
2016/06/25 Javascript
微信小程序 判断手机号的实现代码
2017/04/19 Javascript
bootstrap常用组件之头部导航实现代码
2017/04/20 Javascript
JS实现手写parseInt的方法示例
2017/09/24 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
2017/11/08 jQuery
vue项目前端埋点的实现
2019/03/06 Javascript
为什么Vue3.0使用Proxy实现数据监听(defineProperty表示不背这个锅)
2019/10/14 Javascript
Python正则表达式匹配ip地址实例
2014/10/09 Python
pycharm远程调试openstack代码
2017/11/21 Python
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
python实现视频读取和转化图片
2019/12/10 Python
Java byte数组操纵方式代码实例解析
2020/07/22 Python
Django mysqlclient安装和使用详解
2020/09/17 Python
HTML5之web workers_动力节点Java学院整理
2017/07/17 HTML / CSS
html5拖曳操作 HTML5实现网页元素的拖放操作
2013/01/02 HTML / CSS
美体小铺波兰官方网站:The Body Shop波兰
2019/09/03 全球购物
比较基础的php面试题及答案-填空题
2014/04/26 面试题
毕业生求职的求职信
2013/12/05 职场文书
三爱活动实施方案
2014/03/19 职场文书
公共场所禁烟标语
2014/06/25 职场文书
数学教师个人总结
2015/02/06 职场文书
法人身份证明书
2015/06/18 职场文书
小学教师暑期培训心得体会
2016/01/09 职场文书
电脑关机速度很慢怎么办 提升电脑关机速度设置教程
2022/04/08 数码科技