python3 map函数和filter函数详解

(编辑:jimmy 日期: 2024/9/26 浏览:2)

map()函数可以对一个数据进行同等迭代操作。例如:

def f(x):
   return x * x
r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])
print(list(r))

map函数传入的第一个参数就是函数本身,即f。第二个参数是要操作的数据

map() 作为高阶函数,事实上它把运算规则抽象了,因此,我们不但可以计算简单的 f(x)=x 2 ,还可以计算任意复杂的函数,比如,把这个list 所有数字转为字符串:

print(list(map(str, [1, 2, 3, 4, 5, 6, 7, 8, 9])))

filter() 的作用是从一个序列中筛出符合条件的元素。

语法:

filter函数的语法是filter(函数名,序列)

list1=[20,12,13,5,8,19]
 def fa(n):#过滤出大于10的数字,并生成一个新的列表  list2=[]  if n>10:    list2.append(n)  return list2
print(list(filter(lambda n:n>10,list1)))#使用filter配合lambda函数实现输出结果:[20,12,13,19]

map函数和filter函数都可以结合lambda函数使用,可以实现对一个序列中的每一个元素做同样的事情

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。