概述
lambda函数:
基本结构:
lambda arg:expression
eg:
xxx = lambda x,y:x+y 此时就是一个简单的函数
等价于
def xxx(x,y):
return x+y
调用也等同于普通的函数:
xxx(1,2)
map函数:
基本结构:
map(function,iterable,...)
就是将function多次迭代
返回值是一个集合,且不改变原来的元素
eg:
def square(x):
return x ** 2
print(list(map(square,[1,2,3,4,5])))
# 结果如下:
[1,4,9,16,25]
当不传入function时,map()就等同于zip(),将多个列表相同位置的元素归并到一个元组:
map(None,iterable)
eg:
map([2,4,6],[3,2,1])
########直接print输出的是map函数的地址,输出值需要进行数据类型转换#########
# 结果如下
[(2,3),(4,2),(6,1)]
filter函数:
Python内置的filter()函数能够从可迭代对象(如字典、列表)中筛选某些元素,并生成一个新的迭代器。可迭代对象是一个可以被“遍历”的Python对象,也就是说,它将按顺序返回各元素,这样我们就可以在for循环中使用它。
重点在筛选,由function决定。也是其与map的区别
基本结构:
filter(function, iterable)
返回值是一个可迭代的filter对象,也是要进行数据类型转换
map函数与filter函数的异同:
相同点:
第一个参数都是一个函数
第二个参数是一个可迭代序列
返回可迭代对象
不同点:
filter的第一个参数是函数,这个函数是用来判断条件的
filter最后返回值中的值是满足function中的条件的值
map的第一个函数也是函数,但这个函数是用来做映射的。
map中最后返回值中的值是可迭代序列中的值在function中处理后的结果
map函数与lambda函数混合使用:
把lambda函数放在function的位置作为一个函数使用
eg:
print(list(map(lambda x, y: x+y,[1,3,5,7,9],[2,4,6,8,10])))
# 结果如下:
[3,7,11,15,19]
最后
以上就是奋斗黄豆为你收集整理的lambda,map,filter学习概要笔记的全部内容,希望文章能够帮你解决lambda,map,filter学习概要笔记所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复