map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f依次作用在list的每个元素上,map()函数会返回一个迭代器,可以依次迭代得到原来list的元素被函数f处理后的结果。
>>> map(f, list)
例如,对于list [1, 2, 3, 4, 5, 6, 7, 8, 9]。
如果希望把list的每个元素都作平方,就可以利用map()函数。
我们定义需要传入函数f(x)=x*x,就可以利用map()函数完成这个计算:
def f(x): return x*x for item in map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]): print(item)
得到结果:
[1, 4, 9, 10, 25, 36, 49, 64, 81]
由于list包含的元素可以是任何类型,因此,map() 不仅仅可以处理只包含数值的 list,事实上它可以处理包含任意类型的 list,只要传入的函数f可以处理这种数据类型。
假设用户输入的英文名字不规范,没有按照首字母大写,后续字母小写的规则,请利用map()函数,把一个list(包含若干不规范的英文名字)变成一个包含规范英文名字的list:
输入:['alice', 'BOB', 'CanDY']
输出:['Alice', 'Bob', 'Candy']
参考答案:
def format_name(s): return s[0].upper() + s[1:].lower() for item in map(format_name, ['alice', 'BOB', 'CanDY']): print(item)
请验证,完成请求
由于请求次数过多,请先验证,完成再次请求
打开微信扫码自动绑定
绑定后可得到
使用 Ctrl+D 可将课程添加到书签
举报