在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
学过python的人,相信都接触过Lambda表达式。本文就来谈谈Lambda表达式在Python中的优点和缺点。一方面,Lambda函数的减少了代码的行数,方便又简洁。另一方面,Lambda表达式有诸多限制,不能使用复杂逻辑。

一、Lambda表达式的概念。
Lambda表达式也叫匿名函数,即函数没有具体的名称。Lambda表达式是Python中一类特殊的定义函数的形式,使用它可以定义一个匿名函数。与其它语言不同,Python的Lambda表达式的函数体只能有单独的一条语句,也就是返回值表达式语句。Lambda语句构建的其实是一个函数对象。匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果。
二、Lambda表达式的优点:
1、使用Python写一些执行脚本时,使用Lambda可以省去定义函数的过程,让代码更加精简。
2、对于一些抽象的,不会别的地方再复用的函数,有时候给函数起个名字也是个难题,使用Lambda不需要考虑命名的问题。
3、使用Lambda在某些时候让代码更容易理解。
4、举例:
def f(x):
return x**2
print f(4)
Python中使用lambda的话,写成这样
g = lambda x : x**2
print g(4)
三、Lambda表达式的缺点:
1. 若不用并行计算,很多时候计算速度没有比传统的 for 循环快(并行计算有时需要预热才显示出效率优势,并行计算目前对 Collection 类型支持的好,对其他类型支持的一般)。
2. 不容易调试。
3. 若其他程序员没有学过Lambda表达式,代码不容易让其他语言的程序员看懂。
4. 在Lambda语句中强制类型转换貌似不方便,一定要搞清楚到底是 map 还是 mapToDouble 还是 mapToInt。
总之,Lambda表达式在Python中的也会有争议的声音,它既有其优点又存在缺点。大家又是怎么认为的呢?
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
为什么学完了Python还是找不到好工作?
在人工智能中最适合的语言就是Python,因而人工智能的热潮让Python也火了一把。根据第 19 届 KDnuggets调查显示,Python 成数据分析、数据科学与机器学习的第一大语言。然而还是有求职者有这样的困扰:为什么学完了Python还是找不到好工作?
8441
2019-07-08 09:17:35
Python飞机大战实战项目案例
都说实践是检验知识掌握程度的最好测试。随着Python学习者的增长,越来越多的零基础入门课程让人眼花缭乱。虽然说基础理论的学习十分重要,但是如果仅仅只学习理论知识,也是远远不够的。飞机大战的项目实战可以说是python基础入门的最好课程之一,下面我们一起来看看博学谷上的Python飞机大战项目实战案例。
6937
2020-03-09 01:41:20
Python基础培训教程学什么?
对于许多Python初学者来讲,“从哪开始学起”、“要学什么内容”都是一开始困扰他们的首要难题。确实刚开始踏入编程学习的大门,感到迷茫和不知所措也是正常的。本文将和大家一起聊聊,Python基础培训教程学什么?一般来讲,都是从Python的基础语法开始学起,Python 容器、函数和文件操作以及面向对象都是需要学习的内容。
5380
2020-07-02 11:19:59
操作标签元素属性获取和设置怎么实现?
JS操作标签元素属性获取和设置怎么实现?标签HTML是由一套标记标签组成,通常就叫标签。元素内容指开始标签与结束标签之间的内容,单标签没有元素内容,表单标签除外。属性是为HTML 元素提供的附加信息用来修饰标签。
4111
2021-12-27 15:13:18
定时器是什么?怎么用?
定时器是在一段特定的时间后执行某段程序代码。定时器有两种方法:setInterval()按照指定的周期(以毫秒计)来调用函数或计算表达式。方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭;setTimeout()在指定的毫秒数后调用函数或计算表达式。
5268
2021-12-29 14:28:29
