质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。素数在数论中有着很重要的地位。比1大但不是素数的数称为合数。1和0既非素数也非合数。质数是与合数相对立的两个概念,二者构成了数论当中最基础的定义之一。基于质数定义的基础之上而建立的问题有很多世界级的难题,如哥德巴赫猜想等。算术基本定理证明每个大于1的正整数都可以写成素数的乘积,并且这种乘积的形式是唯一的。这个定理的重要一点是,将1排斥在素数集合以外。如果1被认为是素数,那么这些严格的阐述就不得不加上一些限制条件。 前几天偶尔的有朋友问python怎么判断素数的方法,走网上查了查,总结了python脚本判断一个数是否为素数的几种方法:

1.运用python的数学函数

import math

def isPrime(n):

if n <= 1:

return False

for i in range(2, int(math.sqrt(n)) + 1):

if n % i == 0:

return False

return True

2.单行程序扫描素数

from math import sqrt

N = 100

[ p for p in range(2, N) if 0 not in [ p% d for d in range(2, int(sqrt(p))+1)] ]

运用python的itertools模块

from itertools import count

def isPrime(n): www.ctolib.com

if n <= 1:

return False

for i in count(2):

if i * i > n:

return True

if n % i == 0:

return False

3.不使用模块的两种方法方法1:

def isPrime(n):

if n <= 1:

return False

i = 2

while i*i <= n:

if n % i == 0:

return False

i += 1

return True

方法2:

def isPrime(n):

if n <= 1:

return False

if n == 2:

return True

if n % 2 == 0:

return False

i = 3

while i * i <= n:

if n % i == 0:

return False

i += 2

return True

eg:求出20001到40001之间的质数(素数)既然只能被1或者自己整出,那说明只有2次余数为0的时候,代码如下:

#!/usr/bin/python

L1=[]

for x in xrange(20001,40001):

n = 0

for y in xrange(1,x+1):

if x % y == 0:

n = n + 1

if n == 2 :

print x

L1.append(x)

print L1

结果如下:

20011

20021

20023

20029

20047

20051

20063

20071

20089

20101

20107

20113

20117

20123

20129

20143

20147

20149

20161

20173

….

python 素数库_使用Python判断质数(素数)的简单方法讲解相关推荐

  1. c调用python第三方库_用 Python ctypes 来调用 C/C++ 编写的第三方库

    看到一篇简洁的文章--如何用Python ctypes调用C++(ctypes调用C没这么多麻烦事),不敢独享... 如果需要用 Python 调用 C/C++ 编写的第三方库(这些第三方库很可能就是 ...

  2. python cgi库_《Python 数据库 GUI CGI编程》

    1. 上次写在前面,我们介绍了一篇关于开始使用Python.今天我们将介绍Python数据库,GUI, CGI编程和Python和Python的区别.2.连接到数据库标准Python数据库接口是Pyt ...

  3. python xmind库_用Python解析XMind

    本文来自网易云社区 作者:孙圣翔 XMind是画思维脑图很好的工具,正好组里有个需要,是要将xmind画的状态图,转化成代码. 而用来解析xmind的库有个python的,还是官方出品的.不过真不愧是 ...

  4. python request库_【Python爬虫】Request库入门

    什么是爬虫? 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引. ...

  5. python ipaddr库_用Python脚本查询纯真IP库QQWry.dat(Demon修改版)

    #!/usr/bin/env python # coding: utf-8 # from: http://linuxtoy.org/files/pyip.py # Blog: http://linux ...

  6. python 抽奖库_用 python 写一个年会抽奖小程序

    使用 pyinstaller 打包工具常用参数指南 pyinstaller -F demo.py 参数 含义 -F 指定打包后只生成一个exe格式的文件 -D –onedir 创建一个目录,包含exe ...

  7. python itchat库_用python【itchat】库获取群聊信息的正确姿势

    我在<昆明单车骑行群体分析报告(2019版)>中曾用python的itchat模块抓取了我加入的昆明单车群信息,并做了简要分析. 在持续十来天抓取群数据的时候,我发现一个奇怪现象,就是有一 ...

  8. 不属于python第三方库_在 Python 语言中,不属于机器学习领域第三方库的是______。???????????????????????????????????????...

    在 Python 语言中,不属于机器学习领域第三方库的是______.??????????????????????????????????????? 答:Arcade 图的遍历方法有两种:深度优先搜索 ...

  9. python时间库_使用Python的datetime库处理时间(RPA流程)

    RPA流程自动化过程中,遇到时间的相关操作时,可以调用datetime库的一些方法进行处理. datetime 是 Python 处理日期和时间的标准库. 1.获取当前日期和时间 我们先看如何获取当前 ...

最新文章

  1. Mac vscode 调试打印有问题 输出缓冲区 “\r\n“
  2. 对X264/FFMPEG架构探讨---感觉不错
  3. 【ASP.NET Web API教程】5.4 ASP.NET Web API批处理器
  4. GLSL/C++ 实现滤镜效果
  5. android webview fragment,android studio中Fragment使用webview返回上一頁的問題
  6. Londiste3 Install
  7. ***PHP Notice: Undefined index: ..问题的解决方法
  8. debian10上安装samba服务器
  9. 口算题自动生成小工具
  10. 空头平仓什么意思_外汇空头平仓是什么意思?外汇如何平仓?
  11. html页面设置document类型,htmldocument类型
  12. 贝壳采集器: 电话邦 数据采集
  13. 华为AC旁路二层组网隧道转发示例
  14. 开放大世界 codelikeme
  15. 三菱FX5U PLC远程调试监控设备方案
  16. 【ZCMU1603】卡斯丁狗的战舰帝国(并查集)
  17. 人机融合系统的休谟之问到工业智能的成熟应用的联想
  18. 我为什么放弃一个25000星的开源项目
  19. 微机原理及应用->指令系统概述
  20. java.lang.NoSuchFieldError: No static field id_sl_hlry of type I in class Lcom/bsoft/mob/common/R$id

热门文章

  1. luoguP4168: [Violet]蒲公英
  2. 2014年国务院批准放假调休日期的具体安排通知
  3. Google Android开发入门与实战
  4. MMS(Manufacturing Message Specification)协议分析
  5. 三菱FX5U PLC远程调试监控设备方案
  6. FPGA驱动旋转编码器(Verilog)
  7. Python基础(五)---python3中的内置函数
  8. eureka核心知识梳理
  9. 云计算机英语怎么说,云的英语怎么说
  10. 查看网站的爬虫协议,简单介绍爬虫协议robots.txt,避免爬虫爬的好,牢饭吃得早(保姆级图文)