Python的map函数
Python的map函数是一个使用方便直观而且非常常用的函数,参数是一个函数和一个列表,将函数作用于列表的每个元素,得到一个新的列表并返回。
map函数简介
将一个列表的每个值平方:
def square(x):
return x*x
print map(square, [1, 2, 3, 4, 5, 6, 7, 8, 9])则输出结果就是
[1, 4, 9, 10, 25, 36, 49, 64, 81]注意:
map()函数不改变原有的列表,而是返回一个新的列表。
上述python程序中,square(x)函数可以简化成lambda匿名函数(lambda语法糖:无需定义函数名的简便方法):
print map(lambda x: x ** 2, [1, 2, 3, 4, 5, 6, 7, 8, 9])将用户输入内容(列表)的首字母大写,后续字母小写
例如:
输入:['adam', 'LISA', 'barT']
输出:['Adam', 'Lisa', 'Bart']def format_name(s):
s1 = s[0:1].upper() + s[1:].lower()
return s1
print map(format_name, ['adam', 'LISA', 'barT'])map函数进阶
实际上,map()函数的参数不仅仅是2个,从第2个列表开始,可以是多个列表(多个iterable)
map(function, iterable, ...)例如,提供两个列表,将相同位置的列表数据进行相加:
map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])参考
Last updated
Was this helpful?