首页 > 编程语言 >python MAP

python MAP

时间:2023-04-25 21:13:55浏览次数:33  
标签:MAP squared map python items list 列表 Map

Map
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, 所以我在上面也是这么做的。 不仅用于一列表的输入, 我们甚至可以用于一列表的函数!

def multiply(x):
        return (x*x)
def add(x):
        return (x+x)
funcs = [multiply, add]
for i in range(5):
    value = map(lambda x: x(i), funcs)
    print(list(value))
    # 译者注:上面print时,加了list转换,是为了python2/3的兼容性
    #        在python2中map直接返回列表,但在python3中返回迭代器
    #        因此为了兼容python3, 需要list转换一下
# Output:
# [0, 0]
# [1, 2]
# [4, 4]
# [9, 6]
# [16, 8]

 

标签:MAP,squared,map,python,items,list,列表,Map
From: https://www.cnblogs.com/xkdn/p/17353876.html

相关文章

  • PYTHON FILTER
    Filter顾名思义,filter过滤列表中的元素,并且返回一个由所有符合要求的元素所构成的列表,符合要求即函数映射到该元素时返回值为True.这里是一个简短的例子:number_list=range(-5,5)less_than_zero=filter(lambdax:x<0,number_list)print(list(less_than_zero))#......
  • PYTHON REDUCE
    Reduce当需要对一个列表进行一些计算并返回结果时,Reduce是个非常有用的函数。举个例子,当你需要计算一个整数列表的乘积时。通常在python中你可能会使用基本的for循环来完成这个任务。现在我们来试试reduce:fromfunctoolsimportreduceproduct=reduce((lambdax......
  • PYTHON set
    set(集合)数据结构set(集合)是一个非常有用的数据结构。它与列表(list)的行为类似,区别在于set不能包含重复的值。这在很多情况下非常有用。例如你可能想检查列表中是否包含重复的元素,你有两个选择,第一个需要使用for循环,就像这样:some_list=['a','b','c','b','d','m','......
  • 一行python代码实现并行
    Python在程序并行化方面多少有些声名狼藉。撇开技术上的问题,例如线程的实现和GIL,我觉得错误的教学指导才是主要问题。常见的经典Python多线程、多进程教程多显得偏"重"。而且往往隔靴搔痒,没有深入探讨日常工作中最有用的内容。传统的例子简单搜索下"Python多线程教程",不难发现......
  • python 调试 debugger
    调试(Debugging)利用好调试,能大大提高你捕捉代码Bug的。大部分新人忽略了Pythondebugger(pdb)的重要性。在这个章节我只会告诉你一些重要的命令,你可以从官方文档中学习到更多。译者注,参考:https://docs.python.org/2/library/pdb.htmlOrhttps://docs.python.org/3/library/pd......
  • python 连接oracle 报错 cx_Oracle.DatabaseErro
    1,python连接oracle的时候报错如下cx_Oracle.DatabaseError:ORA-24315:非法的属性类型,2,导致这个错误的原因是服务器oracle版本和客户端cx_oracle客户端版本不一致引起的,所以通过下面命令询oracle版本。select*fromv$version3,然后到http://sourceforge.net/projects/cx-ora......
  • 《流畅的python》单分派泛函数
    假设我们在开发一个调试Web应用的工具,我们想生成HTML,显示不同类型的Python对象。我们可能会编写这样的函数:importhtmldefhtmlize(obj):content=html.escape(repr(obj))return'<pre>{}</pre>'.format(content)这个函数适用于任何Python类型,但是现在我们想做个......
  • Python面向切面编程-语法层面和functools模块
    1,Python语法层面对面向切面编程的支持(方法名装饰后改变为log)__author__='Administrator'importtimedeflog(func):defwrapper(*args):start=time.time()func(args)end=time.time()print'funcusedtimeis:',end-st......
  • Python中 os.popen、os.system和subprocess.popen方法介绍
    Python提供了多种与操作系统交互的方法,比如os模块中的popen和system方法,此外,Pythonsubprocess模块中的Popen类也提供了与操作系统交互的方法,使用起来更加灵活,本文将简单介绍这几种方法。目录os.popen方法os.system方法susbprocess.Popen方法替代os.popen()方法替代os.system......
  • apply_map_applymap的区别
    1.apply()使用: 2.map()方法的使用: 3.applymap每个元素同时操作: ......