44.Python:匿名函数lambda


# 1.有名函数
# func = 函数的内存地址
# def func(x, y):
# return x + y


# 2.定义匿名函数
# lambda x, y: x + y

# 3.调用匿名函数
# 方式一:
# res = (lambda x, y: x + y)(1, 2)
# print(res)

# 方式二:
# func = lambda x, y: x + y
# res = func(1, 2)
# print(res)

# 匿名函数用于临时调用一次的函数:更多的是将匿名函数与其他函数配合使用

salaries = {
'sepia': 3000,
'tom': 7000,
'lily': 10000,
'jack': 2000
}

# 取最高工资的人
# res = max(salaries, key=lambda x: salaries[x])
# print(res)
# 取最低工资的人
# res = min(salaries, key=lambda x: salaries[x])
# print(res)
# 按工资排序(从小到大)
# res = sorted(salaries, key=lambda x: salaries[x])
# print(res)
# 按工资排序(从大到小)
# res = sorted(salaries, key=lambda x: salaries[x], reverse=True)
# print(res)

# ================================================
# map(映射)的应用(了解)
# l1 = ['alex', 'axx', 'bxx', 'cxx', 'dxx']
# res = map(lambda name: name + '_dsb', l1)
# print(res) # 得到生成器

# ================================================
# filter的应用(了解)
# l2 = ['alex', 'axx', 'bxx', 'cxx', 'dxx']
# res = filter(lambda name: name.endswith('xx'), l2)
# print(res) # 得到生成器

# ================================================
# reduce(了解)
# from functools import reduce
# res = reduce(lambda x, y: x + y, [1, 2, 3], 10)
# print(res)
#
# res = reduce(lambda x, y: x + y, ['a', 'b', 'c'], 'sss')
# print(res)
posted @ 2021-07-06 10:39  SEPIA  阅读(38)  评论(0)    收藏  举报