您当前的位置:首页 > 计算机 > 编程开发 > Python

Python求素数

时间:08-29来源:作者:点击数:

Python求素数

def _odd_iter():    # 构造一个从3开始的奇数序列
    n = 1
    while True:
        n = n +1
        yield n 

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

def primes():   # 定义一个生成器,不断返回下一个素数
    yield 2
    it = _odd_iter()    # 初始序列
    while True:
        n = next(it)    # 返回序列的第一个数
        yield n
        it = filter(_not_divisible(n),it)   # 构造新序列

for n in primes():  # 打印1000以内的素数
    if n < 1000:
        print(n)
    else:
        break
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门