9512.net
甜梦文库
当前位置:首页 >> 数学 >>

2-10python中匿名函数


python 中匿名函数
高阶函数可以接收函数做参数,有些时候,我们不需要显式地定义函数,直接传入匿名函数更方便。 在 Python 中,对匿名函数提供了有限支持。还是以 map()函数为例,计算 f(x)=x2 时,除了定义一个 f(x) 的函数外,还可以直接传入匿名函数:

>>>map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9]) [1, 4, 9, 16, 25, 36, 49, 64, 81]
通过对比可以看出,匿名函数 lambda x: x * x 实际上就是:

def f(x): return x * x
关键字 lambda 表示匿名函数,冒号前面的 x 表示函数参数。 匿名函数有个限制,就是只能有一个表达式,不写 return,返回值就是该表达式的结果。 使用匿名函数,可以不必定义函数名,直接创建一个函数对象,很多时候可以简化代码:

>>>sorted([1, 3, 9, 5, 0], lambda x,y: -cmp(x,y)) [9, 5, 3, 1, 0]
返回函数的时候,也可以返回匿名函数:

>>>myabs = lambda x: -x if x < 0 else x >>>myabs(-1) 1 >>>myabs(1) 1

任务
利用匿名函数简化以下代码:

def is_not_empty(s): return s and len(s.strip()) > 0 filter(is_not_empty, ['test', None, '', 'str', ' ', 'END'])



更多相关文章:
2-15python中函数
2-15python中函数_数学_自然科学_专业资料。python 中函数当一个函数有...>>int('12345') 12345 但 int()函数还提供额外的 base 参数,默认值为 10...
2-9python中闭包
2-9python中闭包_法律资料_人文社科_专业资料。python 中闭包在函数内部定义的函数和外部定义的函数是一样的,只是他们无法被外部访问: def g(): print 'g()....
2-8python中返回函数
2-8python中返回函数_数学_自然科学_专业资料。python 中返回函数 Python 的...()函数时,将立刻计算并得到结果: >>>calc_sum([1, 2, 3, 4]) 10 ...
Python小测试_2_图文
Python小测试_2_小学作文_小学教育_教育专区。Python小测试1~9有助于初学者...函数 random.randint(0, 10) 和 random.randrange(0, 10)产生的随机数范围...
python2
2.程序源代码: ''' print 'Hello Python world!\n' print '*' * 10 ...= %d' % (i,fact(i)) ''' 【程序 27】 题目:利用递归函数调用方式,将...
python2.72内置函数手册
python2.72内置函数手册_计算机软件及应用_IT/计算机_专业资料。Python2.72 ...如果想知道某个对象的内存地址,用这个内置函数,返回10 进制的地址。 33....
Python核心编程(第版)第十章习题答案
Python核心编程(第版)第十章习题答案 10.1 引发异常。以下的哪个因素会在...同样,raw_input()函数也可 能会生成两种异常,EOFError(文件末尾 EOF,在 Unix ...
Python 的各种符号
从 stdin 里读取执行代码。 Table 2.1. Python ...匿名函数 x<y,x<=y,x==y,x!=y,x>=y,x>...Table 10.1. 正则表达式基本字符字符 . ^ $ 描述...
python常用函数
[1, 4, 9, 10, 25, 36, 49, 64, 81] ...2.reduce()函数 reduce()函数也是 Python 内置的一...匿名函数高阶函数可以接收函数做参数,有些时候,我们...
Python2 基础语法
(2,10) print 'sum=',sum print 'multi=',multi print 'plus=',plus ...五,小结: 本文介绍了 Python 的变量,输入输出函数,表达式,基本语句(分支和循环...
更多相关标签:

All rights reserved Powered by 甜梦文库 9512.net

copyright ©right 2010-2021。
甜梦文库内容来自网络,如有侵犯请联系客服。zhit325@126.com|网站地图