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进阶教程之模块(module)介绍
Aug 30 Python
Python爬虫之模拟知乎登录的方法教程
May 25 Python
python opencv 直方图反向投影的方法
Feb 24 Python
python遍历文件夹找出文件夹后缀为py的文件方法
Oct 21 Python
Python 从相对路径下import的方法
Dec 04 Python
Python中使用双下划线防止类属性被覆盖问题
Jun 27 Python
python实现翻转棋游戏(othello)
Jul 29 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
Aug 05 Python
基于python实现学生信息管理系统
Nov 22 Python
利用Python代码实现一键抠背景功能
Dec 29 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
Sep 29 Python
如何通过python检查文件是否被占用
Dec 18 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中feof()函数实例测试
2014/08/23 PHP
php支付宝接口用法分析
2015/01/04 PHP
php+xml结合Ajax实现点赞功能完整实例
2015/01/30 PHP
PHP指定截取字符串中的中英文或数字字符的实例分享
2016/03/18 PHP
js网页侧边随页面滚动广告效果实现
2011/04/14 Javascript
js对图片base64编码字符串进行解码并输出图像示例
2014/03/17 Javascript
js 动态为textbox添加下拉框数据源的方法
2014/04/24 Javascript
IE浏览器中图片onload事件无效的解决方法
2014/04/29 Javascript
jQuery中offsetParent()方法用法实例
2015/01/19 Javascript
JavaScript类型系统之布尔Boolean类型详解
2016/06/26 Javascript
switch语句的妙用(必看篇)
2016/10/03 Javascript
JS使用正则截取两个字符串之间的字符串实现方法详解
2017/01/06 Javascript
深入理解js中的加载事件
2017/02/08 Javascript
jQuery Validate表单验证插件实现代码
2017/06/08 jQuery
jQuery实现的点击图片居中放大缩小功能示例
2019/01/16 jQuery
微信小程序 行的删除和增加操作实现详解
2019/09/29 Javascript
JS实现省市县三级下拉联动
2020/04/10 Javascript
[01:11:10]2014 DOTA2华西杯精英邀请赛 5 24 iG VS VG加赛
2014/05/26 DOTA
[01:04:05]VG vs Newbee 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
在Python中实现贪婪排名算法的教程
2015/04/17 Python
Python实现小数转化为百分数的格式化输出方法示例
2017/09/20 Python
解决python中os.listdir()函数读取文件夹下文件的乱序和排序问题
2018/10/17 Python
Python matplotlib通过plt.scatter画空心圆标记出特定的点方法
2018/12/13 Python
python多继承(钻石继承)问题和解决方法简单示例
2019/10/21 Python
Python ORM框架Peewee用法详解
2020/04/29 Python
Python模拟登录和登录跳转的参考示例
2020/10/30 Python
关于django python manage.py startapp 应用名出错异常原因解析
2020/12/15 Python
猫途鹰:全球领先的旅游点评社区
2017/04/07 全球购物
Crocs美国官方网站:卡骆驰洞洞鞋
2017/08/04 全球购物
台湾森森购物网:U-mall
2017/10/16 全球购物
idealfit英国:世界领先的女性健身用品和运动衣物品牌
2017/11/25 全球购物
干部培训自我鉴定
2014/01/22 职场文书
公司聘任书模板
2014/03/29 职场文书
甲乙双方合作协议书
2014/10/13 职场文书
有关骆驼祥子的读书笔记
2015/06/26 职场文书
Ruby处理YAML和json数据
2022/04/18 Ruby