python匿名函数用法实例分析

yipeiwu_com6年前Python基础

本文实例讲述了python匿名函数用法。分享给大家供大家参考,具体如下:

匿名函数特点:

1.只能有一个表达式
2.不用return,默认return结果
3.不需要名字,防止函数名重复
4.是对象,可赋值给一个变量

经典例子

>>> map(lambda x : x*x, [2, 4, 8, 9])
[4, 16, 64, 81]

python匿名函数lambda格式:

lambda 参数(可以有默认值) : 表达式

# 无参
>>> lambda : 'hello word!'
<function <lambda> at 0x10d32f578>
>>> hw = lambda : 'hello word!'
>>> hw()
'hello word!'
>>> hw
<function <lambda> at 0x10d32f5f0>

# 有参
>>> sum = lambda a, b : a + b
>>> sum(2, 8)
10
# 有参 有默认值
>>> sum = lambda a, b=8 : a + b
>>> sum(2)
10
>>> sum(2, 4)
6
# 不定长参
>>> sum = lambda *z : z
>>> sum(18, 'ac', {'a': 1})
#嵌套if else(还有其他很多使用方法)
>>> sum = lambda a, b : a if a>b else b
>>> sum(4, 5)
5

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程

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

相关文章

Python判断文件和文件夹是否存在的方法

一、python判断文件和文件夹是否存在、创建文件夹 复制代码 代码如下: >>> import os >>> os.path.exists('d:...

Python multiprocess pool模块报错pickling error问题解决方法分析

本文实例讲述了Python multiprocess pool模块报错pickling error问题解决方法。分享给大家供大家参考,具体如下: 问题 之前在调用class内的函数用mu...

python实现把两个二维array叠加成三维array示例

python实现把两个二维array叠加成三维array示例

遇到这样一个需求:程序中每次循环生成一个二维array,需要把每次循环的二维array叠加成一个三维的array,例如有如下两个矩阵: 组合成以下这种形式: 这样组合之后,有一个非常...

python使用PyFetion来发送短信的例子

通过PyFetion可以很方便的使用python来用飞信发送短信,下面贴出代码:复制代码 代码如下:from fetion import *import osdef SendSMS(sm...

把项目从Python2.x移植到Python3.x的经验总结

 经历移植jinja2到python3的痛苦之后,我把项目暂时放一放,因为我怕打破python3的兼容。我的做法是只用一个python2的代码库,然后在安装的时候用2to3工具...