标签:python filter reduce 元素 result
map reduce filter使用
map 遍历序列,对序列中每个元素进行操作,最终获取新的序列
例1
li = [11, 22, 33] new_list = map(lambda a: a + 100, li)
例2
li = [11, 22, 33] sl = [1, 2, 3] new_list = map(lambda a, b: a + b, li, sl)
reduce 对于序列中的元素进行筛选,最终获取符合条件的序列
li = [11, 22, 33] new_list = filter(lambda arg: arg > 22, li)
reduce 对于序列内所有元素进行累计操作
li = [11, 22, 33] result = reduce(lambda arg1, arg2: arg1 + arg2, li,1000) # reduce的第一个参数,函数必须要有两个参数 # reduce的第二个参数,要循环的序列 # reduce的第三个参数,初始值 #arg1+1000+arg2
2.分页divmod
divmod(总条目数,每页最大容纳条目数)
输出(页数,余数)
3.yield
如代码所示,range会在内存中创建所有指定的数字,而xrange不会立即创建,只有在迭代循环时,才去创建每个数组。
>>> print range(10)[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> print xrange(10)xrange(10)4.lambda使用。
my_lambda = lambda arg : arg + 1
5.装饰器
装饰器是函数,只不过该函数可以具有特殊的含义,装饰器用来装饰函数或类,使用装饰器可以在函数执行前和执行后添加相应操作
def wrapper(func): def result(): print ‘before‘ func() print ‘after‘ return result@wrapperdef foo(): print ‘foo‘6.冒泡算法
相邻两个值进行比较,将较大的值放在右侧,依次比较!
例: li = [13, 22, 6, 99, 11] for i in range(len(li)): for m in range(i-1): if li[m] > li[m+1]: li[m],li[m+1]=li[m+1],li[m]
本文出自 “砺器悟道” 博客,请务必保留此出处http://jzzjw.blog.51cto.com/9921462/1713414
标签:python filter reduce 元素 result
原文地址:http://jzzjw.blog.51cto.com/9921462/1713414