7.4 匿名函数

7.4 匿名函数


所谓匿名,就是不再使用def 语句这样标准的形式定义一个函数。在Python 中,使用lambda 来创建匿名函数。匿名函数需要注意以下几点:

第一, lambda 只是一个表达式,函数体比def 简单很多。

第二, lambda 的主体是一个表达式,而不是一个代码块。仅仅能在lambda 表达式中封装有限的逻辑进去。

第三, lambda 函数拥有自己的命名空间,且不能访问自己参数列表之外或全局命名空间中的参数。

第四,虽然lambda 函数看起来只能写一行,却不等同于C 或C++ 的内联函数,后者的目的是调用函数时不占用钱内存从而增加运行效率。

larnbda 函数的语法只包含一个语旬,具体如下:

lambda 〔arg1 〔, arg2 , .... .argn〕〕:expression

单击"开始"菜单,打开Python 3怠5 Shell 软件,然后单击菜单栏中的"File/New File" 命令,创建一个Python 文件,并命名为"Mypython7-8.py" ,然后输入如下代码:

myl 出nb = lambda arg1 , arg2 , arg3 : arg1 + arg2 - arg3

#调用匿名函数mylamb

print ("调用匿名函数,并返回运算位: ", mylamb( 10 , 20 , 5 ))

单击菜单栏中的"Run/Run Module" 命令或按下键盘上的"F5" ,就可以运行程序代码,结果如图7.9 所示。