Python基础-----Map函数

Posted Meanwey

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础-----Map函数相关的知识,希望对你有一定的参考价值。

1、若要实现对一个列表中每个元素的更改,如对一个数字列表,得到一个新的列表是原来列表每个元素的平方
l = [1,3,5,7,9]
def pingfang(x):
return x**2
def map_test(func,array):
ret = []
for i in array:
ret.append(func(i))
return ret
print(map_test(pingfang,l))
>>> [1,9,25,49,81]
2、上例可以用lambda匿名函数取代执行元素的操作函数来处理
def map_test(func, array):
ret = []
for i in array:
ret.append(func(i))
return ret
print(map_test(lambda x:x**2, l))
>>> [1,9,25,49,81]
3、其实上述操作都可以用内置函数map来取代操作
map函数的用法:
map(func,iterable)
内部运行即为将传入的iterable对象用for循环提取出来,用传入的第一个参数func函数来处理
类似于上述2中我们自定义的map_test()函数,第一个参数是传入一个执行函数,第二个参数是个可迭代对象,最终返回值是
迭代器,所以需要用list()等方法将其转换为列表等可迭代对象(在python2中直接map()返回的为一个列表)
a.将列表的每个元素平方
print(list(map(lambda x:x**2,[1,3,5,7,9])))
>>> [1,9,25,49,81]
b. 将字符串中每个字符转换为大写
msg = ‘abcdefg‘
print(list(map(lambda x:x.upper(),msg)))
>>> [‘A‘,‘B‘,‘C‘,‘D‘,‘E‘,‘F‘,‘G‘]

以上是关于Python基础-----Map函数的主要内容,如果未能解决你的问题,请参考以下文章

python基础之map/reduce/filter/sorted

Python基础篇第2篇: Python内置函数--map/reduce/filter/sorted

Python基础高阶函数

python基础之map/reduce/filter/sorted

python基础:内置函数zip,map,filter

Python基础-----Map函数