Python基础教程

013_filter过滤函数

filter过滤函数

filter过滤函数判断每一个元素

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。

filter() 方法的语法:

filter(function, iterable)

说明:

  • function -- 判断函数,辅助过滤,并不改变原始数据。
  • iterable -- 可迭代对象。
# 原始数据
alist=[1,2,3,4,5,6,7,8,9,10]
print(alist)         # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# 定义判断函数,比如隔行取数
def isSpan(x):
    if x % 2==0:
        return True

# 利用判断函数过滤,然后转换为列表
f_alist=list(filter(isSpan,alist))
print(f_alist)       # [2, 4, 6, 8, 10]

filter()与lambda表达式的结合

# 原始数据
alist=[1,2,3,4,5,6,7,8,9,10]
print(alist)         # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# 利用判断函数过滤,然后转换为列表
f_alist=list(filter(lambda x:x%2==0,alist))
print(f_alist)       # [2, 4, 6, 8, 10]

# 隔三行输出
f_alist=list(filter(lambda x:x%3==0,alist))
print(f_alist)       # [3, 6, 9]
这篇文章对您有用吗?

我们要如何帮助您?