用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - python代码库

素数的算法

2018-11-10 作者:jack_Ding举报

[python]代码库

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

def main():
    f = open('C:/py/isprimes.txt', 'w')
    for n in primes():
        if n < 10000000000:
            f.write(str(n)+'. ')
        else:
            break
    f.close()

def _odd_iter():
    n = 1
    while True:
        n = n + 2
        yield n

def _not_divisible(n):
    
    return lambda x: x % n > 0

def primes():
    yield 2
    it = _odd_iter() #初始序列:奇数序列 it是一个生代器
    print('type it',type(it))
    print('it',it)
    while True:
        n = next(it) #返回序列的第一个数
        yield n
        it = filter(_not_divisible(n), it) #构造一个新的序列

if __name__ == '__main__':
    print(__name__)
    print('__main__')
    main()


分享到:
更多

网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。