python使用筛选法计算小于给定数字的所有素数


Posted in Python onMarch 19, 2018

本文实例为大家分享了python计算小于给定数字的所有素数的具体代码,供大家参考,具体内容如下

代码思路:首先列出指定范围内所有候选数字,然后从前往后依次选择一个数字去除以后面所有数字,能够被整除的肯定不是素数,把这些数字过滤掉,然后重复这个过程,直到选择的除数大于最大数字的平方根为止。代码主要演示内置函数filter()和切片的用法,实际上这个算法的效率并不是很高。

def primes2(maxNumber):
  '''筛选法获取小于maxNumber的所有素数'''
  #待判断整数
  lst = list(range(3, maxNumber, 2))
  #最大整数的平方根
  m = int(maxNumber**0.5)
  for index in range(m):
    current = lst[index]
    #如果当前数字已大于最大整数的平方根,结束判断
    if current > m:
      break
    #对该位置之后的元素进行过滤
    lst[index+1:] = list(
      filter(
        lambda x: 0 if not x%current else x,
        lst[index+1:]))
  #2也是素数
  return [2] + lst

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python爬虫爬取美剧网站的实现代码
Sep 03 Python
Python实现中文数字转换为阿拉伯数字的方法示例
May 26 Python
使用anaconda的pip安装第三方python包的操作步骤
Jun 11 Python
django Serializer序列化使用方法详解
Oct 16 Python
Python3 关于pycharm自动导入包快捷设置的方法
Jan 16 Python
Numpy之random函数使用学习
Jan 29 Python
python的几种矩阵相乘的公式详解
Jul 10 Python
python3的数据类型及数据类型转换实例详解
Aug 20 Python
详解Python list和numpy array的存储和读取方法
Nov 06 Python
使用Python操作ArangoDB的方法步骤
Feb 02 Python
解决redis与Python交互取出来的是bytes类型的问题
Jul 16 Python
python 输入字符串生成所有有效的IP地址(LeetCode 93号题)
Oct 15 Python
python将每个单词按空格分开并保存到文件中
Mar 19 #Python
python将文本分每两行一组并保存到文件
Mar 19 #Python
python: line=f.readlines()消除line中\n的方法
Mar 19 #Python
Python File readlines() 使用方法
Mar 19 #Python
Python cookbook(数据结构与算法)筛选及提取序列中元素的方法
Mar 19 #Python
django用户注册、登录、注销和用户扩展的示例
Mar 19 #Python
Python cookbook(数据结构与算法)根据字段将记录分组操作示例
Mar 19 #Python
You might like
phpmyadmin显示utf8_general_ci中文乱码的问题终级篇
2013/04/08 PHP
Zend Framework入门教程之Zend_Registry组件用法详解
2016/12/09 PHP
php使用变量动态创建类的对象用法示例
2017/02/06 PHP
tagName的使用,留一笔
2006/06/26 Javascript
学习ExtJS TextField常用方法
2009/10/07 Javascript
jQuery延迟加载图片插件Lazy Load使用指南
2015/03/25 Javascript
js鼠标单击和双击事件冲突问题的快速解决方法
2016/07/11 Javascript
简单实现jQuery轮播效果
2017/08/18 jQuery
微信小程序request请求后台接口php的实例详解
2017/09/20 Javascript
网页爬虫之cookie自动获取及过期自动更新的实现方法
2018/03/06 Javascript
jQuery选择器之基本过滤选择器用法实例分析
2019/02/19 jQuery
vue以组件或者插件的形式实现throttle或者debounce
2019/05/22 Javascript
在Vue 中获取下拉框的文本及选项值操作
2020/08/13 Javascript
[01:15:44]首部DOTA2纪录片今日23时全网上映
2014/03/19 DOTA
python的dict,set,list,tuple应用详解
2014/07/24 Python
python版本单链表实现代码
2018/09/28 Python
python实现停车管理系统
2018/11/30 Python
Python3 使用cookiejar管理cookie的方法
2018/12/28 Python
用Python实现大文本文件切割的方法
2019/01/12 Python
Python3标准库之threading进程中管理并发操作方法
2020/03/30 Python
浅谈Python中的字符串
2020/06/10 Python
python是怎么被发明的
2020/06/15 Python
为什么python比较流行
2020/06/19 Python
Django跨域请求原理及实现代码
2020/11/14 Python
函授本科自我鉴定
2014/02/04 职场文书
洗车工岗位职责
2014/03/15 职场文书
高三毕业典礼主持词
2014/03/27 职场文书
建筑公司员工自我鉴定
2014/04/08 职场文书
初二学习计划书范文
2014/04/27 职场文书
2014迎接教师节演讲稿
2014/09/10 职场文书
工作检讨书范文
2015/01/23 职场文书
十八大观后感
2015/06/12 职场文书
2015年音乐教学工作总结
2015/07/22 职场文书
大学生心理健康教育心得体会
2016/01/12 职场文书
vue-cli4.5.x快速搭建项目
2021/05/30 Vue.js
UNION CREATIVE《Re:从零开始的异世界生活》雷姆手办
2022/03/20 日漫