在线客服
扫描二维码
下载博学谷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和C语言哪个难?零基础学哪个好?
Python和C语言哪个难?零基础学哪个好?Python上手简单有交互性强的开发环境,还有众多的第三方库,学习起来会比C/C++容易的多。C过于底层强在内存操作,功能实现起来却十分复杂并不适合新手作为上手语言。
18906
2019-08-07 15:50:54
怎么学习Python语言?python编程语言入门
怎么学习Python语言?python编程语言入门,首先我们应该准备windows资源管理器和python解释器安装程序,安装好软件再开始下一步的学习。学习Python前一定要明确自己的目标,从一些入门书籍或入门课程开始让自熟悉Python语言。
7436
2019-08-22 18:30:10
Python入门视频看哪个好?适合初学者的教学视频推荐
Python作为一门新手友好的编程语言,对于初学者来说,还是有一定的学习难度的。目前的Python学习资料在网上可以找到很多,那么Python入门视频看哪个好呢?本文就为大家推荐博学谷的免费Python入门教学视频—《从0开始学Python》,即使是初学者学完,也可以快速入门Python。
8807
2019-09-15 16:49:11
Python自学教材推荐 初学者必看
Python是一种面向对象、解释性的高级程序语言,它已经被应用在众多领域,因此学习Python变得越来越有必要。传智播客针对编程零基础的初学者,编著出版了高质量的Python自学教材——《Python快速编程入门》。下面我将把这本书推荐给大家,大家可以详细了解一下该书的具体内容。
5796
2020-04-15 15:19:03
如何利用Python批量下载百度图片?
有时候大家需要保存下载百度图片,但是在数量很大的情况下,一张一张地下载就显得很繁琐麻烦。那么,有没有一种方法可以把搜索到大量的百度图片直接下载到本地电脑中呢?当然有,答案就是利用Python。下面我们主要从方案思路和代码演示两个方面,来看看如何利用Python批量下载百度图片。
6794
2020-04-20 10:22:36