jiang1799 发表于 2017-5-7 13:06:33

【转】python 常用函数 map reduce sorted enumerate

5.11. map
map(function,sequence,)
返回序列,为对原序列每个元素分别调用function获得的值.
可以传入多个序列,但function也要有相应多的参数,如
map(lambda x,y,z:x+y+z,range(1,3),range(3,5),range(5,7))
计算过程为
1+3+5=9
2+4+6=12
返回
 

5.12. reduce
reduce(function,sequence,)
返回一个单值为,计算步骤为 :


[*]第1个结果=function(sequence,sequence)
[*]第2个结果=function(第1个结果,sequence)
[*]返回最后一个计算得值
[*]
如果有init,则先调用function(init,sequence) 

[*]sequence只有一个元素时,返回该元素,为空时抛出异常.

如 reduce(lambda x,y:x+y,range(3),99) 的计算为
99+0=99 => 99+1=100 => 100+2=102
返回102
注:实际使用中用内建函数sum来完成这个累加更合适,如这里等价sum(range(3),99)
 
 

5.15. sorted排序
返回一个有序的新序列

>>>sorted()

 

5.16. enumerate 返回索引位置和对应的值
 

for i,v in enumerate(['tic','tac','toe'])
    print i,v
输出:

0 tic
1 tac
2 toe
页: [1]
查看完整版本: 【转】python 常用函数 map reduce sorted enumerate