python 使用 lambda 来创建匿名函数。
lambda只是一个表达式,函数体比def简单很多。
lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。
虽然lambda函数看起来只能写一行,却不等同于C或C++的内联函数,后者的目的是调用小函数时不占用栈内存从而增加运行效率。
sum = lambda arg1, arg2: arg1 + arg2 print(sum(2, 3))
三元表达式
python中的三元表达式使用的是if与else
res = '大于' if 10 > 5 else '小于' print(res)
可能习惯了JS的三元运算符,python的三元表达式有点不习惯
语法:
条件为真返回的结果 if 条件判断 else 条件为假返回的结果
map函数
arr = [1, 2, 3, 4, 5, 6, 7, 8] res = map(lambda num: num*2, arr) print(list(res)) 结果 [2, 4, 6, 8, 10, 12, 14, 16]
filter过滤函数
filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。
该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
r = filter(lambda x: x > 3, arr) print(list(r)) 结果 [4, 5, 6, 7, 8]
发表评论
侧栏公告
寄语
譬如朝露博客是一个分享前端知识的网站,联系方式11523518。
热评文章
标签列表
热门文章
友情链接