python3 之 匿名函数

1、匿名函数的含义

顾名思义就是没有函数名的函数。一般用来解决功能简单需求的一句话函数。

2、匿名函数的格式

lambda 参数: 返回值
# 多个参数的时候,用英文逗号隔开

举例:

# 匿名函数 lambda
# 基本的语法结构
# func 是一个内存地址,要运行它,需要加个()去调用它; x 表示形参;x+1 相当于函数return 的值;
func = lambda x: x+1
print(func(10))

# 相当于以下函数

"""
def foo(x):
    return x+1


print(foo(10))
"""

f = lambda x, y, z: (x+1, y+1, z+1)
print(f(1, 2, 3))

输出的结果:

11
(2, 3, 4)

3、匿名函数的常用用法

匿名函数经常与内置函数结合使用。

# 与max()/ min() 函数结合使用
print(max([{'age': 10}, {'age': 20}], key=lambda dic: dic['age']))

# 与filter()
li = ['alex', [1, 2, 3], {}, ()]
print(list(filter(lambda x: type(x) is not dict, li)))  # 找出li中非字典数据类型

# 与map()
print(list(map(lambda n: n**2, range(10))))  # 把range(10)中的每个值的平方 组成列表

# 与sorted
p = [{'name': '电脑', 'price': 2000}, {'name': '电脑', 'price': 1980}]
print(sorted(p, key=lambda dic: dic['price']))   # 按价格排序

输出的结果:

{'age': 20}
['alex', [1, 2, 3], ()]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
[{'name': '电脑', 'price': 1980}, {'name': '电脑', 'price': 2000}]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值