python 基础教程之Map使用方法

yipeiwu_com6年前Python基础

Python 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)) 

大多数时候,我们会使用python中的匿名函数lambda来配合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) 

以上程序输出为:

# Output: 
# [0, 0] 
# [1, 2] 
# [4, 4] 
# [9, 6] 
# [16, 8] 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

Python+matplotlib实现填充螺旋实例

Python+matplotlib实现填充螺旋实例

填充螺旋演示结果: 实例代码: import matplotlib.pyplot as plt import numpy as np theta = np.arange(0, 8...

Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法

Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法

Python编写从ZabbixAPI获取信息 此脚本用Python3.6执行是OK的。 # -*- coding: utf-8 -*- import json import urll...

Python3批量生成带logo的二维码方法

最近有个需求:批量生成带Logo的二维码 生成二维码比较简单,网上的资源也比较多,不赘述了。自己研究了一下加了logo并且美化了一下(网上的资源直接加Logo特别丑!!!忍不了!!!),...

在python的WEB框架Flask中使用多个配置文件的解决方法

有些框架本身就支持多配置文件,例如Ruby On Rails,nodejs下的expressjs。python下的Flask虽然本身支持配置文件管理, 但单纯使用from_object和...

python opencv调用笔记本摄像头

python opencv调用笔记本摄像头

通过查看书籍,自己总结了一下,怎样用python代码实现调用笔记本摄像头的功能。 这主要是通过opencv中cv2模块来实现这个功能。其中是调用cv2中的函数,比如:imread()函数...