其他分享
首页 > 其他分享> > lambda、map、reduce、filter、sorted函数

lambda、map、reduce、filter、sorted函数

作者:互联网

# lambda 函数
from functools import reduce

a = lambda x: x ** 2
print(a(3))


def power(func, l=[]):
return [func(x) for x in l]


print(power(lambda x: x ** 2, [2, 3, 4]))

# map函数 一般配合着lambda函数使用

print(list(map(lambda x, y: x + y, [1, 3, 5], [2, 4, 5])))

# reduce函数
from functools import reduce


def func(x, y):
print(x, y) # reduce 函数过程
return x * y


print(reduce(func, [1, 2, 3, 4, 5])) # ((((1*2)*3)*4)*5)

# 配合 lambda函数使用
print(reduce(lambda x, y: x * y, [1, 2, 3, 4, 5]))


# 有初始值时
def func1(x, y):
print(x, y)
return x * y


print(reduce(func1, [1, 2, 3, 4, 5], 3))


# filter函数 过滤的意思
def my_fun(x):
return x % 2 == 0


result = filter(my_fun, [1, 2, 3, 4, 5])
print(list(result))
# sorted函数 排序
# sorted(iterable, /, *, key=None, reverse=False)
print(sorted([145, 35, 76, 8, 64, 60])) # 升序排列
print(sorted([145, 35, 76, 8, 64, 60], reverse=True)) # 降序排列

data = ([44, 77], [90, 56])
print(sorted(data)) # 按第一个数排序
print(sorted(data, key=lambda item: item[1])) # 按二个数排序

标签:map,return,函数,reduce,filter,print,sorted,lambda
来源: https://www.cnblogs.com/kk-style/p/16375494.html