一、map
参数:
map(function, sequence[, sequence, ...]) -> list
说明:
对squence(s)中的items依次执行function,返回一个list.
实例:
>>> map(str, xrange(5)) #对list进行str操作
['0', '1', '2', '3', '4']
>>> map(lambda x:x+5, xrange(5)) #每个值加5
[5, 6, 7, 8, 9]
>>> map(lambda x,y:x+y, xrange(5),xrange(5)) #把两个list中对应索引的值相加
[0, 2, 4, 6, 8]
二、filter
参数:
filter(function or None, sequence) -> list, tuple, or string
说明:
对sequence执行function操作,返回结果为true的list
实例:
>>> filter(lambda x:x>2, xrange(5)) #返回list中大于2的数字
[3, 4]
>>> filter(None, xrange(5)) #返回list中条件为true的数字
[1, 2, 3, 4]
参数:
reduce(function, sequence[, initial]) -> value
说明:
对sequence迭代调用function,function必须为两个参数,第三个参数为初始值,返回一个值
实例:
>>> reduce(lambda x,y:x*y, xrange(1,5)) # 1*2*3*4的结果
24
>>> reduce(lambda x,y:x*y, xrange(1, 5), 5) # 初始值为5,即5*1*2*3*4的结果
120