python学习之Map

来源:互联网 发布:翻译软件手机版 编辑:程序博客网 时间:2024/05/16 18:23

Map会将一个函数映射到一个输入列表的所有元素上。Map的规范为:map(function_to_apply, list_of_inputs)

大多数时候,我们需要将列表中的所有元素一个个传递给一个函数,并收集输出。例如:

items = [1, 2, 3, 4, 5]squared = []for i in items:    squared.append(i**2)
使用Map的话,可以让我们以一种更加简便的方法解决这种问题。
items = [1, 2, 3, 4, 5]squared = list(map(lambda x: x**2, items))
大多数时候,我们会使用python中的匿名函数lambda来配合map。不仅对于一列表的输入,同时我们也可以用于一列表的函数。

def multiply(x):    return (x*x)def add(x):    return (x+x)funcs = [multiply, add]for i in range(5):    value = list(map(lambda x: x(i), funcs))    print(value)
以上程序输出为:

# Output:# [0, 0]# [1, 2]# [4, 4]# [9, 6]# [16, 8]




0 0
原创粉丝点击