python 内建函数之map

  map语法: map(function,iterable)

  map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回

  Example:

1 >>> def add(x):
2 ...     return x+100
3 ...
4 >>> map(add,[1,2,3,4,5,6])
5 [101, 102, 103, 104, 105, 106]

也可以用传入lamba函数

  Example

1 >>> map(lambda x:x+100,[1,2,3,4,5,6])
2 [101, 102, 103, 104, 105, 106]

如果给map函数传入的是None值会怎么样?

  Example:

1 >>> list1 = [1,2,3]
2 >>> list2 = [4,5,6]
3 >>> list3 = [7,8,9]
4 >>> map(None,list1,list2,list3)
5 [(1, 4, 7), (2, 5, 8), (3, 6, 9)]
6 >>> map(None,list1)
7 [1, 2, 3]

 python 内建函数之filter

filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决于sequence的类型)返回

1 >>> filter(lambda x:x>20,[x for x in range(40)])                    #把大于20的数列出来,返回为list
2 [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39]

 

python内建函数之reduce

reduce(function, sequence, starting_value):对sequence中的item顺序迭代调用function,如果有starting_value,还可以作为初始值调用,例可以用来对List求和:

1 >>> reduce(lambda x,y:x+y,[x for x in xrange(10)])
2 45

 

posted on 2015-11-14 22:53  冰下急流  阅读(38)  评论(0)    收藏  举报