filter
filter函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。
map
map() 会根据提供的函数对指定序列做映射,这样运算就会快很多,这样可以利用了多个cpu,更快处理大型任务
# -*- coding: utf-8 -*-
def f(x):
return x*x
# 将一个包含0到10000的列表,输出每一个元素的平方,利用filter把偶数过滤掉
def get_niuyujia():
niuyujia = []
for index in range(10000):
niuyujia.append(index)
return niuyujia
niuyujia = get_niuyujia()
def func(index):
return index % 2 == 1
# 仅返回奇数
def get_mul(niuyujia):
mul = list(map(f, niuyujia))
# python3中的map方法返回的是一个迭代器
filter_odd = filter(func,mul) # 过滤掉偶数
print(filter_odd)
get_mul(niuyujia)