python中的lambda表达式

目录

1.lambda函数的简介

2.为什么要用lambda函数       

3.lambda函数的效率

4.lambda函数常用举例

        4.1 多参数

        4.2 与map函数进行使用

        4.3 求两个列表元素的和

5.个人见解


1.lambda函数的简介

  • lambda函数是一种匿名函数,即没有名字的函数
  • 使用lambda保留字定义,函数名是返回结果
  • lambda函数的函数体只是一个表达式
  • lambda函数用于定义简单的、能够在一行内表示的函数
  • lambda表达式” : “后面,只能有一个表达式,def则可以有多个。
  • lambda一般用来定义简单的函数,而def可以定义复杂的函数

        例如:

g=lambda x:x+1
print(g(1))
#结果为2

        可以这样认为,lambda作为一个表达式,定义了一个匿名函数。等价于:

def g(x):
    return x+1

         实质:

 

2.为什么要用lambda函数       

        1.1 在Python中有两种函数,一种是def定义的函数,另一种是lambda函数,也就是大家常说的匿名函数。今天我就和大家聊聊lambda函数,在Python编程中,大家习惯将其称为表达式。

        1.2 用lambda函数首先减少了代码的冗余,其次,用lambda函数,不用费神地去命名一个函数的名字,可以快速的实现某项功能,最后,lambda函数使代码的可读性更强,程序看起来更加简洁。

        1.3 根本原因:我也不想用啊,可好多参考文章就是用lambda,我又看不懂......

 

3.lambda函数的效率

        和def函数没有区别

4.lambda函数常用举例

        4.1 多参数

g=lambda x,y,z: x+2*y+z**2
print(g(1,2,3)) #14

#也可以直接传入参数
w=(lambda x,y,z:x+2*y+z**2)(1,2,3)
print(w)       #14

        

        4.2 与map函数进行使用

a=map(lambda x : x**2,[1,2,3,4])
for i in a:
    print(i,end=" ")    
    
#1 4 9 16 

        4.3 求两个列表元素的和

a = [1,2,3,4]
b = [5,6,7,8]
print(list(map(lambda x,y: x+y,a,b)))

5.个人见解

        很少在写代码过程中使用lambda函数,因为个人觉得虽然lambda函数使代码结构更加紧凑,但却使代码看起来不是那么清晰。学会lambda的好处就是可以更好的理解其他人的代码,毕竟一万个程序员有一万零一种代码风格。

        大二的时候上程序设计课,当时老师叫我们用pyqt 和 tkinter写ui的时候碰到挺多的:lambda是拿来当中间函数的,tkinter事件处理函数传递参数就要用到lambda。有这方面需要的还是掌握lambda比较好。

 文章参考:传送锚点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值