python中lambda与def用法对比实例分析

yipeiwu_com7年前Python基础

本文实例对比分析了python中lambda与def的用法。分享给大家供大家参考。具体分析如下:

1、lambda用来创建匿名函数,不同于def(def创建的函数都是有名字的)。
2、lambda不会将结果赋给一个标识符,而def会将函数结果赋给一个标识符。
3、lambda是一个表达式,而def是一个语句

示例程序:

>>> f1 = lambda x,y,z: x*2+y+z # lambda带有多个参数
>>> print f1(3,2,1)
9
>>> f3 = lambda i:i*2 # lambda带有一个参数
>>> print f3(7)
14
>>> def fun1(n):
...   return lambda m:m**n # m的n次方
...
>>> def fun2(m, n):
...   return m+n
...
>>> f2 = fun1(2) # 动态生成一个函数
>>> print f2(4)
16
>>> print fun2(3, (lambda x:x+1)(2)) # lambda用作函数参数
6
>>>

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python groupby 函数 as_index详解

在官方网站中对as_index有以下介绍: as_index : boolean, default True For aggregated output, return object w...

20行python代码实现人脸识别

20行python代码实现人脸识别

OpenCV 是最流行的计算机视觉库,原本用 C 和 C++ 开发,现在也支持 Python。 它使用机器学习算法在图像中搜索人的面部。对于人脸这么复杂的东西,并没有一个简单的检测能对...

深入浅出分析Python装饰器用法

本文实例讲述了Python装饰器用法。分享给大家供大家参考,具体如下: 用类作为装饰器 示例一 最初代码: class bol(object): def __init__(self...

Python处理中文标点符号大集合

中文文本中可能出现的标点符号来源比较复杂,通过匹配等手段对他们处理的时候需要格外小心,防止遗漏。以下为在下处理中文标点的时候采用的两种方法: 中文标点集合 比较常见标点有这些: !?...

Django框架 Pagination分页实现代码实例

一、自定义分页 1、基础版自定义分页 data = [] for i in range(1, 302): tmp = {"id": i, "name": "alex-{}...