当调用函数时, 有时不需要显示定义好一个函数, 直接传入一个匿名函数更为方便。python可使用lambda
表达式创建匿名函数。
lambda 参数1[, 参数2, ...参数n]:表达式
lambda
函数有如下特点:
lambda
只是一个表达式,函数体比def
简单很多;lambda
的主题有且只有一个表达式,而不是代码块;lambda
函数拥有自己的命名空间,不能访问自己参数列表之外或者全局命名空间里的参数。例子一:使用匿名函数实现两个数字求和功能:
!usr/bin/env python
func = lambda x,y:x+y
print(func(1,2))
说明:
偏函数是functools.partial()
函数,将原函数当做第一个参数传入,原函数的各个参数依次作为partial()
函数后续的参数。
functools.partial()
的作用是把一个函数其中的一些参数设置为默认值, 返回一个新的函数, 调用这个新的函数更加简单。
例子一:将int()
函数封装为默认base为2的偏函数。
import functools
int2 = functools.partial(int,base=2)
print(int2('0011'))
print(int2('1111'))
说明:
base
,其默认值为10,即将字符串转换为10进制。functools.partial()
函数可以通过将base
设置为2构建一个转换为2进制的偏函数。原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。