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自然语言编码转换模块codecs介绍
Apr 08 Python
Python 中 Virtualenv 和 pip 的简单用法详解
Aug 18 Python
python3将视频流保存为本地视频文件
Jun 20 Python
python 反向输出字符串的方法
Jul 16 Python
python实现杨氏矩阵查找
Mar 02 Python
django云端留言板实例详解
Jul 22 Python
Python切割图片成九宫格的示例代码
Mar 10 Python
python图片剪裁代码(图片按四个点坐标剪裁)
Mar 10 Python
Python实现加密接口测试方法步骤详解
Jun 05 Python
python使用requests库爬取拉勾网招聘信息的实现
Nov 20 Python
Jupyter Notebook添加代码自动补全功能的实现
Jan 07 Python
python math模块的基本使用教程
Jan 16 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环境配置 php5 MySQL5 apache2 phpmyadmin安装与配置图文教程
2007/03/16 PHP
php 分页函数multi() discuz
2009/06/21 PHP
php读取csv数据保存到数组的方法
2015/01/03 PHP
PHP中遇到的时区问题解决方法
2015/07/23 PHP
PHP内核探索:哈希表碰撞攻击原理
2015/07/31 PHP
PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】
2017/07/03 PHP
php处理多图上传压缩代码功能
2018/06/13 PHP
thinkPHP事务操作简单案例分析
2019/10/17 PHP
通过PHP实现用户注册后邮箱验证激活
2020/11/10 PHP
极酷的javascirpt,让你随意编辑任何网页
2007/02/25 Javascript
web基于浏览器的本地存储方法应用
2012/11/27 Javascript
jQuery实现form表单reset按钮重置清空表单功能
2012/12/18 Javascript
JavaScript数组深拷贝和浅拷贝的两种方法
2014/04/16 Javascript
Jquery中CSS选择器用法分析
2015/02/10 Javascript
js实现同一页面多个不同运动效果的方法
2015/04/10 Javascript
深入浅出 jQuery中的事件机制
2016/08/23 Javascript
Vue 中使用vue2-highcharts实现top功能的示例
2018/03/05 Javascript
WebPack配置vue多页面的技巧
2018/05/15 Javascript
解决mui框架中switch开关通过js控制开或者关状态时小圆点不动的问题
2019/09/03 Javascript
前端性能优化建议
2020/09/17 Javascript
实现vuex原理的示例
2020/10/21 Javascript
[00:32]2018DOTA2亚洲邀请赛Liquid出场
2018/04/03 DOTA
gearman的安装启动及python API使用实例
2014/07/08 Python
Python with的用法
2014/08/22 Python
Python制作数据导入导出工具
2015/07/31 Python
Python排序算法实例代码
2017/08/10 Python
Python数据结构与算法之字典树实现方法示例
2017/12/13 Python
对pyqt5中QTabWidget的相关操作详解
2019/06/21 Python
Pycharm快捷键配置详细整理
2020/10/13 Python
Python爬取酷狗MP3音频的步骤
2021/02/26 Python
纯CSS绘制漂亮的圆形图案效果
2014/05/07 HTML / CSS
欧洲最大的滑雪假期供应商之一:Sunweb Holidays
2018/01/06 全球购物
高校毕业生登记表自我鉴定
2013/11/03 职场文书
党支部2014年度工作总结
2014/12/04 职场文书
稽核岗位职责
2015/02/10 职场文书
Golang MatrixOne使用介绍和汇编语法
2022/04/19 Golang