00 map filter(过滤) reduce

循环每个元素(第二个参数),然后让每个元素执行函数(第一个参数),将每个函数执行的结果保存到新的列表中,并返回。

v1 = [11,22,33,44]
result = map(lambda x:x+100,v1)
print(list(result)) # 返回特殊,如果想看返回的内容,Python通过list 进行转换
filter (过滤)
v1 = [11,22,33,'asd',44,'xf']

def func(x):
    if type(x) == int:
        return True
    return False
result = filter(func,v1) # [11,]
print(list(result))


result = filter(lambda x: True if type(x) == int else False ,v1) #等价
print(list(result))

result = filter(lambda x: type(x) == int ,v1)  #等价
print(list(result))
reduce p132

需要导入

import functools

functools.reduce(函数, v1)

import functools  #示列表中数字相乘,相加,将列表中的字符进行相接接
v1 = ['wo','hao','e']

def func(x,y):
    return x+y
result = functools.reduce(func,v1) 
print(result)

result = functools.reduce(lambda x,y:x+y,v1)
print(result)
posted @ 2024-09-25 23:10  jhchena  阅读(2)  评论(0编辑  收藏  举报