lambda、map、reduce、filter、sorted函数

2023-02-17,,,,

# 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])) # 按二个数排序

lambda、map、reduce、filter、sorted函数的相关教程结束。

《lambda、map、reduce、filter、sorted函数.doc》

下载本文的Word格式文档,以方便收藏与打印。