- Python核心编程从入门到开发实战
- 朱红庆
- 422字
- 2020-08-27 18:33:05
4.1.3 Iambda表达式的使用
lambda就是匿名函数,即没有名字的函数,应用在需要一个函数,但是又不想费神去命名这个函数的场合。在通常情况下,这样的函数只使用一次。在Python中,使用lambda表达式创建匿名函数,其语法格式如下:
![](https://epubservercos.yuewen.com/78C615/16699149905738406/epubprivate/OEBPS/Images/84_1.jpg?sign=1739342989-XbVJb0b5JbyURwGQiY9h2SfAai6PnGls-0-6f888086dce2953c7314a5ab16181f22)
在以上语法格式中,result用于调用lambda表达式;[arg1 [,arg2,…,argn]]是可选参数,用于指定要传递的参数列表,各参数之间使用逗号“,”分隔;expression是必选参数,用于指定一个实现具体功能的表达式。如果有参数,那么在该表达式中将应用这些参数。需要注意的是,在使用lambda表达式时,参数可以有多个,用逗号分隔;但是,表达式只能有一个,即只能返回一个值,而且不能出现其他非表达式语句,如for或while语句。
【范例4-1】定义一个计算圆面积的函数,常规的代码如下:
![](https://epubservercos.yuewen.com/78C615/16699149905738406/epubprivate/OEBPS/Images/84_2.jpg?sign=1739342989-PeqkQ5G3y7tB1bhJt6BcT5B5O8qkEKjd-0-4b7b492db9dbdd932d6dab4cdf618e19)
运行程序,输出结果如下:
![](https://epubservercos.yuewen.com/78C615/16699149905738406/epubprivate/OEBPS/Images/84_3.jpg?sign=1739342989-5TssgH0i1viyJxjAjPT201VzXN2LGwE7-0-b1a9ba1a6093160b94e2cddafe4ad543)
【范例4-2】使用lambda表达式的代码如下:
![](https://epubservercos.yuewen.com/78C615/16699149905738406/epubprivate/OEBPS/Images/84_4.jpg?sign=1739342989-bKil9bmaKeYZoq4KmD3SJTZAwZ7hqCGJ-0-596fd164af8b9d8014942bfb8ef998a3)
运行程序,输出结果如下:
![](https://epubservercos.yuewen.com/78C615/16699149905738406/epubprivate/OEBPS/Images/84_5.jpg?sign=1739342989-ttaS2eq0ei5rT3cwBkANow20zy3q83Zc-0-5d017f90ea098f856e4cd6b4bc626a51)
从上面的范例中可以看出,使用lambda表达式可以省去定义函数的过程。而且,对于一些抽象的、不会在别的地方复用的函数,当不想为函数命名时,使用lambda表达式是一个很好的选择。