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实现的重启关机程序实例
Aug 21 Python
Python实现的Google IP 可用性检测脚本
Apr 23 Python
Python获取某一天是星期几的方法示例
Jan 17 Python
python实现读取excel写入mysql的小工具详解
Nov 20 Python
用tensorflow实现弹性网络回归算法
Jan 09 Python
Python读取指定日期邮件的实例
Feb 01 Python
python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用
Apr 03 Python
Python获取基金网站网页内容、使用BeautifulSoup库分析html操作示例
Jun 04 Python
基于python判断目录或者文件代码实例
Nov 29 Python
python 图像插值 最近邻、双线性、双三次实例
Jul 05 Python
Python开发.exe小工具的详细步骤
Jan 27 Python
python计算列表元素与乘积详情
Aug 05 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
php引用计数器进行垃圾收集机制介绍
2012/09/19 PHP
php实现利用phpexcel导出数据
2013/08/24 PHP
一键生成各种尺寸Icon的php脚本(实例)
2017/02/08 PHP
PHP检查URL包含特定字符串实例方法
2019/02/11 PHP
你必须知道的Javascript知识点之"单线程事件驱动"的使用
2013/04/23 Javascript
js 弹出框只弹一次(二次修改之后的)
2013/11/26 Javascript
使用javascript实现简单的选项卡切换
2015/01/09 Javascript
jQuery toggle 代替方法
2016/03/22 Javascript
jQuery弹出层插件popShow用法示例
2017/01/23 Javascript
防止重复发送 Ajax 请求
2017/02/15 Javascript
vue构建单页面应用实战
2017/04/10 Javascript
vue-router实现tab标签页(单页面)详解
2017/10/17 Javascript
react的滑动图片验证码组件的示例代码
2019/02/27 Javascript
详解vue开发中调用微信jssdk的问题
2019/04/16 Javascript
JQuery animate动画应用示例
2019/05/14 jQuery
微信小程序蓝牙连接小票打印机实例代码详解
2019/06/03 Javascript
Vue-cli3.x + axios 跨域方案踩坑指北
2019/07/04 Javascript
webpack3升级到webpack4遇到问题总结
2019/09/30 Javascript
Vue学习之axios的使用方法实例分析
2020/01/06 Javascript
python爬虫正则表达式之处理换行符
2018/06/08 Python
对Python 内建函数和保留字详解
2018/10/15 Python
python版大富翁源代码分享
2018/11/19 Python
Python猴子补丁知识点总结
2020/01/05 Python
python PIL/cv2/base64相互转换实例
2020/01/09 Python
Python如何实现FTP功能
2020/05/28 Python
Keras 实现加载预训练模型并冻结网络的层
2020/06/15 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
Python selenium实现断言3种方法解析
2020/09/08 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
HTML5 Web Database 数据库的SQL语句的使用方法
2012/12/09 HTML / CSS
妇产科护士自我鉴定
2013/10/15 职场文书
2014派出所所长群众路线对照检查材料思想汇报
2014/09/18 职场文书
企业领导班子四风对照检查材料
2014/09/27 职场文书
2015双创工作总结
2015/07/24 职场文书
《钓鱼的启示》教学反思
2016/02/18 职场文书
React如何使用axios请求数据并把数据渲染到组件
2022/08/05 Javascript