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

yipeiwu_com6年前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中os模块详解

os模块提供了对目录或者文件的新建/删除/查看文件属性,还提供了对文件以及目录的路径操作。比如说:绝对路径,父目录…… os.sep可以取代操作系统特定的路径分隔符。windows下为...

Python解惑之True和False详解

Python解惑之True和False详解

前言 众所周知在Python 中常用的数据类型bool(布尔)类型的实例对象(值)就两个,真和假,分别用True和False表示。在if 条件判断和while 语句中经常用到,不过在Py...

Python多进程编程技术实例分析

本文以实例形式分析了Python多进程编程技术,有助于进一步Python程序设计技巧。分享给大家供大家参考。具体分析如下: 一般来说,由于Python的线程有些限制,例如多线程不能充分利...

Python+matplotlib实现计算两个信号的交叉谱密度实例

Python+matplotlib实现计算两个信号的交叉谱密度实例

 计算两个信号的交叉谱密度 结果展示: 完整代码: import numpy as np import matplotlib.pyplot as plt fig,...

Python对Excel按列值筛选并拆分表格到多个文件的代码

场景:集团中心下发本省数据时,并未按地市、业务拆分,现需要按地市、业务拆分并分发到地市。 本文利用Python的pandas包实现了以上场景。 注:本示例代码只实现按单列拆分,如果需要多...