Python中map()函数浅析
2014-08-09 16:31
555 查看
1、对可迭代函数'iterable'中的每一个元素应用‘function’方法,将结果作为list返回。
来个例子:
?
就像文档中说的:对hh中的元素做了add100,返回了结果的list。
2、如果给出了额外的可迭代参数,则对每个可迭代参数中的元素‘并行’的应用‘function’。(翻译的不好,这里的关键是‘并行’)
?
看到并行的效果了吧!在每个list中,取出了下标相同的元素,执行了abc()。
3、如果'function'给出的是‘None’,自动假定一个‘identity’函数(这个‘identity’不知道怎么解释,看例子吧
)
?
用语言解释好像有点拗口
,例子应该很容易理解。
介绍到这里应该差不多了吧!不过还有东西可以挖掘:
stackoverflow上有人说可以这样理解map():
赶快试一下:
哦,输出结果一样。原来map()就是列表推导式啊!要是这样想就错了:这里只是表面现象!再来个例子看看:
这个例子我们在上面看过了,若是用列表推导应该怎么写呢?我想是这样的:
但是看到结果,发现根本不是这么回事:
这便是上面列表推导的结果。怎么会这么多?当然了列表推导可以这么写:
原来如此,若是将三个list看做矩阵的话:
map()只做了列上面的运算,而列表推导(也就是嵌套for循环)做了笛卡尔乘积。
OK,就写到这里。仅个人理解,如有差错请指正,多谢!
来个例子:
?
2、如果给出了额外的可迭代参数,则对每个可迭代参数中的元素‘并行’的应用‘function’。(翻译的不好,这里的关键是‘并行’)
?
3、如果'function'给出的是‘None’,自动假定一个‘identity’函数(这个‘identity’不知道怎么解释,看例子吧
)
?
,例子应该很容易理解。
介绍到这里应该差不多了吧!不过还有东西可以挖掘:
stackoverflow上有人说可以这样理解map():
11 | 22 | 33 |
44 | 55 | 66 |
77 | 88 | 99 |
OK,就写到这里。仅个人理解,如有差错请指正,多谢!
相关文章推荐
- Python中map()内建函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- Python中map()函数浅析
- python中map()函数的使用
- python map内建函数
- [Python] 函数lambda(), filter(), map(), reduce()
- [Python] 函数lambda(), filter(), map(), reduce()
- Python 内建函数,filter,map, reduce
- python 内建函数map&reduce
- python的几个内建函数:apply(),filter(),map(),reduce()
- python map函数用法