7. lambda表达式
标识符和变量
python的标识符都是变量,它可以绑定数据、函数、类和模块等。
函数名也是变量,它绑定一个函数。
def 函数名(形参变量1,形参变量2,形参变量3,...):
语句块
示例
# 此实例示意函数名是一个变量,它绑定一个函数
def f1():
print('f1被调用!')
def f2():
print('f2被调用!')
f1, f2 = f2, f1
f1() # 调用谁?
f2() # f1被调用!
python 创建函数的方法有两种
- def 语句
- lambda 表达式
lambda 表达式
lambda表达式通常用于需要函数对象的地方,但函数又足够简单以至于不需要用标准的def语法来定义。
作用:
通常用于函数的传参并需要短小函数的地方,随时创建,随时销毁。
语法
lambda 函数的参数列表: 表达式
说明
- 函数的参数列表可以为空。
- lambda 表达式 的创建函数只能包含一个表达式。
- lambda 比函数简单且可以随时创建和销毁,有利于减少程序的偶合度。
lambda 表达式示例
def myadd(x, y):
return x + y
print('1 + 2 =', myadd(1, 2)) # 3
# myadd 函数可以改写成
myadd2 = lambda x, y: x + y
print('3 + 4 =', myadd2(3, 4)) # 7