内容来自廖雪峰的官方网站。
1、map的优点:省代码 + 提高可读性。
2、map 运用示例:
>>> def f(x): ... return x * x ... >>> L = [1, 2, 3, 4] >>> iterator = map(f , L) >>> iterator <map object at 0x000002B288BE62E8> >>> list(iterator) [1, 4, 9, 16]
3、reduce:reduce(f, [x1, x2, x3, x4]) 的效果相当于 f(f(f(x1, x2), x3), x4),注意:作为参数的函数必须接收两个参数!
4、reduce 运用示例:
>>> from functools import reduce >>> def add(x , y): ... return x + y ... >>> reduce(add , [1, 2, 3, 4]) 10
5、练习:利用map()
函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。
输入:['adam', 'LISA', 'barT']
,输出:['Adam', 'Lisa', 'Bart']。
def normalize(name): return name.capitalize()
>>> list(map(normalize , ['DADA' , 'DSADXxx', 'X'])) ['Dada', 'Dsadxxx', 'X']
直接使用 capitalize()。