您的位置:首页 > 编程语言 > Python开发

Python学习笔记——filter()实现埃氏筛选

2018-01-16 10:51 447 查看
先介绍filter(fn(),series)函数,其中 fn() 是筛选函数,返回值是True /False,series是待筛选的序列,filter()返回一个Iterator,也就是惰性序列。

#奇数序列生成器
def _odd_iter():
n = 1
while True:
n += 2
yield n

#筛选函数
def is_notDivisable(n):
return lambda x: x % n > 0

#奇数序列中筛选素数
def prime():
yield 2
it = _odd_iter()
while True:
n = next(it)
yield n
it = filter(is_notDivisable(n),it)

for  n in prime():
if n < 1000:
print(n)
else:
break
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐