zoukankan      html  css  js  c++  java
  • Python 利用filter函数求素数

    首先从2开始自然数序列

    2,3,4,5,6,7,8,9,10,11,12,13,14……

    剔除2和2 的倍数,奇数列

    3,5,7,9,11,13,15,17,19……

    剔除3的倍数

    5,7,11,13,17,19

    剔除5的倍数,以此类推

    #创建一个奇数序列

    def jishu():

      n=1

      while True:

      n=n+2

      yield n #迭代器Iterator,惰性序列

    #创建一个过滤函数

    def guolv(first):

      return lambda x:x % first>0

    #定义一个生成器返回素数

    def sushu():

      yield 2

      it=jishu()#奇数序列

      while True:

        first=next(it)

        yield first

        it=filter(guolv(first),it)#过滤后得到新的迭代器

    for n in sushu():

      if n<100:

        print(n)

      else:

        break

      

  • 相关阅读:
    损失函数 代价函数 评分函数 目标函数
    python目录索引
    机器学习/深度学习资料合集
    Git笔记
    目标检测中的正负样本分配
    map计算
    nms
    08shell脚本
    07makefile文件
    05-STL
  • 原文地址:https://www.cnblogs.com/daacheng/p/7817104.html
Copyright © 2011-2022 走看看