map()
函数接收两个参数,一个是函数,一个是Iterable
,map
将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator
返回。(每个元素都会调用这个函数)
再看reduce
的用法。reduce
把一个函数作用在一个序列[x1, x2, x3, ...]
上,这个函数必须接收两个参数,reduce
把结果继续和序列的下一个元素做累积计算,其效果就是:(比如:累加求和)
利用map()
函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。输入:['adam', 'LISA', 'barT']
,输出:['Adam', 'Lisa', 'Bart']
:
def normalize(name):
Y=name[0].upper()+name[1:].lower()
return Y
f=map(normalize,["mason","MiKe"])
print(list(f))
注意,python里面"asdasd".upper()也会变成"ASDASD"
还有这里的map是返回一个Iterator(迭代器),所以我们要加上list函数包裹,才会返回出来list形式