您的位置:首页 > 编程语言 > Python开发

Python list--> Filter , Map , Reduce 使用笔记 (lambda )

2018-02-07 16:54 911 查看
1# -*- coding: utf-8 -*

foo = [2, 18, 9, 22, 17, 24, 8, 12, 27]

##filter(function, sequence) returns a sequence consisting of those

#items from the sequence for which function(item) is true.

#If sequence is a str, unicode or tuple, the result

#will be of the same type; otherwise, it is always a list. For example,

#to compute a sequence of numbers divisible by 3 or 5:

print list(filter(lambda x: x % 3 == 0, foo))

print [x for x in foo if x % 3 == 0]

def ft(x):

    return x % 3 == 0

print filter(ft,foo)

#map(function, sequence) calls function(item) for each of the sequence’s

#items and returns a list of the return values. For example, to compute some cubes:

def mapp(x,y,z):

    return x+y+z

print map (mapp,foo,foo,foo)

print map (lambda x,y,z:x+y+z,foo,foo,foo)

#reduce(function, sequence) returns a single value constructed by calling the binary function

#function on the first two items of the sequence, then on the result and the next item, and so on.

# For example, to compute the sum of the numbers 1 through 10:

def re(a1,a2):

    return a1+a2

print reduce(re,foo)
print reduce(lambda x ,y:x+y,foo)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python