首页 > 编程语言 >python中的Map和Filter

python中的Map和Filter

时间:2024-01-13 20:55:44浏览次数:32  
标签:Map 函数 map python items list 列表 Filter

map会将⼀个函数映射到⼀个输入列表的所有元素上。这是它的规范:

规范

map(function_to_apply, list_of_inputs)

大多数时候,我们要把列表中所有元素⼀个个地传递给⼀个函数,并收集输出。比方说:

items = [1,	2,	3,	4,	5]
squared	= []
for	i in items:
    squared.append(i**2)

Map可以让我们用⼀种简单而漂亮得多的方式来实现。就是这样:

items = [1,	2,	3,	4,	5]
squared = list(map(lambda x:x**2, items))

大多数时候,我们使用匿名函数(lambdas)来配合map。map不仅用于⼀列表的输⼊, 我们甚至可以用于列表的函数!

def multiply(x):
    return (x*x)
def add(x):
    return (x+x)
funcs =	[multiply, add]
for	i in range(5):
    value =	list(map(lambda	x: x(i), funcs))
    print(value)
# 输出如下:
[0, 0]
[1, 2]
[4, 4]
[9, 6]
[16, 8]

filter能创建⼀个列表,其中每个元素都是对一个函数能返回True. 这里是一个简短的例子:

number_list = range(-5,	5)
less_than_zero = list(filter(lambda	x: x < 0, number_list))
print(less_than_zero)
# 输出如下:
[-5, -4, -3, -2, -1]

这个filter类似于⼀个for循环,但它是⼀个内置函数,并且更快。

标签:Map,函数,map,python,items,list,列表,Filter
From: https://www.cnblogs.com/jl1771/p/17962918

相关文章

  • python中的*args**和**kwargs
    首先并不是必须写成*args和**kwargs。只有变量前⾯的*(星号)才是必须的。当然你也可以写成*var和**vars等等,而写成*args和**kwargs只是⼀个通俗的命名约定。*args和**kwargs主要用于函数定义,你可以将不定数量的参数传递给⼀个函数。*args是⽤来发送⼀个非键值对的可变数......
  • linux环境Python安装
    1、下载源码华为云镜像地址下载pythonPython加速地址:https://repo.huaweicloud.com/python/2、安装前置依赖yum-yinstallzlib-develbzip2-developenssl-develncurses-develsqlite-develreadline-develtk-develgdbm-develdb4-devellibpcap-develxz-devellibffi-d......
  • python socket服务端
    pythonsocket服务端importsocket#创建socket对象server_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)#绑定IP地址和端口号server_socket.bind(('127.0.0.1',8000))#监听连接server_socket.listen(1)print('等待客户端连接...')whileTru......
  • Secret,ConfigMap
    Secret是Kubernetes提供的一种用于存储敏感信息的机制。在应用程序中,我们常常需要存储一些敏感信息,例如数据库的用户名和密码、API密钥等。使用Secret可以将这些敏感信息存储在Kubernetes集群中,并在需要的时候安全地将它们传递给应用程序。在Kubernetes中,Secret是一种......
  • python中如何在多层循环中使用break/continue
    关于break/continue这两个关键字在平常的使用过程中一直比较迷糊。好不容易理解了吧,过段时间不使用好像忘记了什么。这个问题也是很多初学者比较容易提及的问题。先通过一个简单的单层循环来了解一下这两个关键字的使用。print('=============单层循环使用=============')for......
  • Binder系列-5-binder_mmap—1—mmap()分析
    一、manmmap1.函数声明#include<sys/mman.h>void*mmap(void*addr,size_tlength,intprot,intflags,intfd,off_toffset);intmunmap(void*addr,size_tlength);intmsync(void*addr,size_tlength,intflags)作用:将文件或设备向内存中进行映射或取消映......
  • python回调函数
    回调函数在各种编程函数中都是比较常见的,回调函数的出现主要是为了降低函数之间调用的耦合性,从而实现解耦。简单来说,如果一个函数可以作为被传递就称这个函数为回调函数。比如:func1(func2()),那么func2就是回调函数。此时,只需要知道func2这个函数的功能是什么,在执行func1时调用fu......
  • 十行python代码实现文件去重,去除重复文件的脚本
    1.导入依赖'''导入依赖'''frompathlibimportPathimportfilecmp2.函数说明filecmp.cmp(path1,path2,shallow=True)path1/path2:待比较的两个文件路径。shallow:默认为True,即只比较os.stat()获取的元数据(创建时间,大小等信息)是否相同,设置为False的话,在对比文件的......
  • python经典有序序列的list列表推导式
    生成一个数据列表#初始化一个列表list_1=[]#使用循环生成一个列表数据forvalinrange(0,20,1):#加入集合list_1.append(val)#打印列表数据print(list_1)#[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]使用列表推导式生......
  • Python 潮流周刊第 35 期(摘要)
    本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。周刊全文:https://pythoncat.top/posts/2024-01-13-weekly以下是本期摘要:......