map()函数
map()函数,顾名思义,用于映射,把一个序列的每一个元素映射到函数中,然后返回一个迭代对象。
例如:
def square(x):
return x**2
print(list(map(square,[1,2,3]))) #[1,4,9] 这里注意要用list作转换
当然也可以用匿名函数lambda
print(list(map(lambda x:x**2,[1,2,3]))) #[1,4,9]
可见map()函数的使用格式:map(function,iterable…)
其实上述的代码也可以使用列表推导来完成,比用map更加简单明了。
print([i**2 for i in [1,2,3]])
filter()函数
filter()函数,顾名思义,用于过滤,把一个序列的每个元素映射到函数中,返回结果为True的元素。使用格式与map函数一样。
例如
print(list(filter(lambda x:x%2==0,[1,2,3]))) #[2],只留下能被2整除的元素