内置高阶函数
内置高阶函数之map
map(func,lst),将传入的函数变量func作用到st变量的每个元素中,并将结果组成新的列表返回(py2/py3返回值不一样!!!)
list3 = [1, 2, 3, 4, 5]
def func(x):
return x ** 2
result = map(func, list3)
print(result)
print(list(result))
内置高阶函数之reduce
reduce(func, lst) 其中func必须有两个参数。每次func计算的结果继续和序列的下一个元素做累积计算。
list3 = [1, 2, 3, 4, 5]
import functools
def func(a, b):
return a + b
result = functools.reduce(func, list3)
print(result)
内置高阶函数之filter
filter(func, lst)函数用于过滤序列,过滤掉不符合条件的元素,返回一个filter对象。如果要转换为列表,可以使用list()来转换。
list3 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
def func(x):
return x % 2 == 0
result = filter(func, list3)
print(result)
print(list(result))