这不仅仅是一行代码,而是这行代码重复运行,具有不同的n值。在

{cd2>基本上还没有排除素数迭代的候选数。你先把所有的奇数作为候选。在it = _odd_iter()

然后你反复地选择剩下的第一个候选人

^{pr2}$

去掉所有那个候选人的倍数filter(_not_divisible(n), it)

把你的候选素数替换成去掉倍数后剩下的所有素数。在it = ...

如果假设filter返回一个数字列表,而不是iterable,并且假设_odd_iter()返回奇数列表而不是iterable,则可以跟踪循环并确定列表中每一点的内容。例如,运行后it = _odd_iter()

你从it = 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, ...

那就跑吧n = next(it) # 3

它把前面的第一个项目拉下来,留给你it = 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, ...

然后跑it = filter(_not_divisible(3), it)

过滤掉3的所有倍数it = 5, 7, 11, 13, 17, 19, 23, 25, ...

然后回到循环的顶部,从前面拉出新的第一个数字n = next(it) # 5

离开it = 7, 11, 13, 17, 19, 23, 25, ...

然后过滤掉5的所有倍数it = filter(_not_divisible(5), it)

这给了it = 7, 11, 13, 17, 19, 23, ...

等等。在

实际上,由于filter()返回的是迭代器,而不是列表,因此最终得到的是迭代器的嵌套序列。特别是,你要从it = _odd_iter()

在循环的第一次迭代之后,基本上it = filter(_non_divisible(3), _odd_iter())

除了3是从迭代器中获取的,然后在循环的第二次迭代之后it = filter(_non_divisible(5), filter(_non_divisible(3), _odd_iter()))

除了5也从迭代器中获取,然后it = filter(_non_divisible(7), filter(_non_divisible(5), filter(_non_divisible(3), _odd_iter())))

等等。在

python素数生成器_在python中用滤波器和生成器生成无穷素数相关推荐

  1. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

  2. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  3. mysql数据字典生成器_「python技术」列表推导、生成器表达式和字典推导的差异及其示例

    #开往春天新创作大赛# 前言 列表推导式构建列表的快捷方式,而生成器表达式则可以用来创建其他任何类型的序列.自python2.7以后,列表推导和生成器表达式的概念就应用到了字典上,所以就有了字典推导, ...

  4. python 素数库_使用Python判断质数(素数)的简单方法讲解

    质数又称素数.指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.素数在数论中有着很重要的地位.比1大但不是素数的数称为合数.1和0既非素数也非合数.质数是与合数相对立的两个概念 ...

  5. python求素数积_用Python求素数的快速算法源码示例

    本篇文章为Python算法相关,用Python求素数的快速算法源码示例.算法在Python的学习中算是一个要点,能研究明白算法的同学都可以算的上是Python的大牛了. 首先简单的来说下什么是素数:质 ...

  6. python 小说 云_小说python何时使用生成器

    生成器.迭代器作为python的两个高级特性,相信大家肯定耳熟能详,都能说道上一阵,但很多时候都是说说而已,知道有这么个东西,而且是好东西,但再看看写过的代码,有多少确实使用它的? 一个语音特性,在潜 ...

  7. python判断质数_使用Python语言判断质数(素数)的简单方法讲解

    本文主要向大家介绍了使用Python语言判断质数(素数)的简单方法,通过具体的实例让大家了解,希望对大家学习Python语言有所帮助. 质数又称素数.指在一个大于1的自然数中,除了1和此整数自身外,不 ...

  8. python全数字问题_关于python:获取一个数字的所有除数的最佳方法是什么?

    这是非常愚蠢的方式: 1 2 3 4def divisorGenerator(n): for i in xrange(1,n/2+1): if n%i == 0: yield i yield n 我想 ...

  9. python 创意项目_针对python开发人员的10个很棒的python项目创意

    python 创意项目 The joy of coding Python should be in seeing short, concise, readable classes that expre ...

  10. 永恒python怎么强化_永恒python加6_pythontip 挑战python (6-10)

    挑战python,6-10题,入门题的解答过程,有更好的方法请留言 题目(id:6):求解100以内的所有素数 输出100以内的所有素数,素数之间以一个空格区分 思路:筛选法求素数.另外,每行结果最后 ...

最新文章

  1. qt命令行程序启动外部进程_QT之程序打包发布
  2. Maven学习教程(六)
  3. 哈希表(HashMap)分析及实现(JAVA)
  4. 招程序员,得招 “会编程” 的
  5. HPU-- 1190 確率
  6. Ubuntu 16.04 下 Vim配置
  7. ERROR: SampleCB() - buffer sizes do not match 解决方法
  8. C# 企业微信消息推送对接,实现天气预报推送
  9. angular和react_如何在Angular中验证默认和自定义React形式
  10. 执行-技术人的管理之路--总结
  11. SEO关键字优化策略-Google Analytics提高关键字转化的的6步骤
  12. 知乎对「如何提问题?」的答案总结
  13. laravel-admin集成ueditor编辑器
  14. jemter 使用if控制器,选择需要的内容
  15. Session保存到指定数据库中
  16. day022 python (re模块和 模块)
  17. 算法:合并两个有序链表21. Merge Two Sorted Lists
  18. Laravel文档梳理7、视图
  19. 强化学习——Sarsa算法
  20. wine下微信中文乱码修订

热门文章

  1. 【电子刊物制作】名编辑电子杂志大师教程 | 设置多国语言浏览界面
  2. 疫情结束后,存活才是远程办公软件必须答好的考题
  3. intval floatval
  4. Triangle Peg Solitaire(孔明棋)
  5. 基于深度学习特征的植物病虫害检测
  6. 使用Bot Framework遇到WebChat无法发送消息的问题解决
  7. 本地windows连接阿里云服务器
  8. otn 709帧结构
  9. TEE7——领先的在线创意设计类T恤购买及团体定制平台
  10. mysql 实现yyyyww_wwyyyy