python详解map函数的用法之函数并行作用解析
Posted zhaolide
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python详解map函数的用法之函数并行作用解析相关的知识,希望对你有一定的参考价值。
Python函数编程中的map(func, seq1[, seq2,…]) 函数是将func作用于seq中的每一个元素,其中seq须是可迭代对象,并将所有的调用的结果作为一个list返回。如果func为None,作用同zip()。
本文参考自:Python中map()函数浅析一文,感谢精彩分享。
下面举得例子来帮助我们更好的理解这个工作过程:
1、对可迭代函数’iterable’中的每一个元素应用‘function’方法,将结果作为list返回。
2、如果给出了额外的可迭代参数,则对每个可迭代参数中的元素‘并行’的应用‘function’。(翻译的不好,这里的关键是‘并行’)
3、在python2中,如果’function’给出的是‘None’,自动假定一个‘identity’函数,此时等同于zip函数【将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,boat怎么读则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将list unzip(解压)。】
注:python3中已经没有这个用法。
4、不等同于使用列表解析,列表解析的原理是(嵌套for循环)做了笛卡尔乘积
5、使用map()函数可以实现将其他类型的数转换成list,但是这种转换也是有类型限制的;
因此,对给定可迭代对象进行转换数据类型时,需要将数据的类型与转换函数相对应。
以上是关于python详解map函数的用法之函数并行作用解析的主要内容,如果未能解决你的问题,请参考以下文章