python之filter()函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python之filter()函数相关的知识,希望对你有一定的参考价值。

filter()函数是python内置的一个高阶函数。

filter()函数接受一个函数f 和一个list,这个函数f的作用是对每个元素进行判断,返回TrueFalse,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。

利用filter()过滤出1~100中平方根是整数的数。
代码实现方法如下:

方法一:(开方求余看是否等于0)

import math

def is_sqrt(x):
   return math.sqrt(x)%1==0
print filter(is_sqrt, range(1, 100))

  

方法二:(开方之后的值强制变成整型 与原来的开方后的值进行比较,看是否相等)

import math

def is_sqr(x):
   y=math.sqrt(x)
   return int(y)==y
print filter(is_sqrt, range(1, 101))

 

最终的运行结果:

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

  




以上是关于python之filter()函数的主要内容,如果未能解决你的问题,请参考以下文章

Python 之内置函数:filter、map、reduce、zip、enumerate

python 之filter()函数

Python内置函数之filter

Python内置函数之filter()

Python3之高阶函数filter

python之filter