filter()函数是python中的一个内置函数,用于过滤序列,过滤掉不符合条件的元素,返回由符合条件的元素组成的新列表。

语法

filter(function,iterable)

function -- 判断函数

iterable -- 可迭代对象

1. 过滤掉列表[4,9,3,14,7,10,6,1]中的所有偶数

L = [4,9,3,14,7,10,6,1]
def is_odd(x):
    return x % 2 == 1
newlist = list(filter(is_odd,L))
print(newlist)

输出结果

[9, 3, 7, 1]

注  在返回时返回的是一个地址,所以必须在外层加上list(),可以向上面那段代码那样加,也可以在输出的时候加上.

2.过滤出1~100中平方根是整数的数

from math import *
L=(range(1,101))
def is_sqr(n):
    return sqrt(n)%1==0 #判断一个数是整数的方法
answer = list(filter(is_sqr,L))
print(answer)

输出结果

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐