【转载】Python脚本判断一个数是否为素数的几种方法

简介:

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

     前几天偶尔的有朋友问python怎么判断素数的方法,走网上查了查,总结了python脚本判断一个数是否为素数的几种方法:

#运用python的数学函数  

?
1
2
3
4
5
6
7
8
9
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
#单行程序扫描素数 
?
1
2
3
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模块  
?
1
2
3
4
5
6
7
8
9
from itertools import count
def isPrime(n):
     if n < = 1 :
         return False
     for i in count( 2 ):
         if i * i > n:
             return True
         if n % i = = 0 :
             return False
#不使用模块的两种方法
?
1
2
3
4
5
6
7
8
9
def isPrime(n):
     if n < = 1 :
         return False
     i = 2
     while i * i < = n:
         if n % i = = 0 :
             return False
         i + = 1
     return True
?
1
2
3
4
5
6
7
8
9
10
11
12
13
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
目录
相关文章
|
21天前
|
Linux Shell Python
Linux执行Python脚本
Linux执行Python脚本
26 1
|
19小时前
|
存储 关系型数据库 MySQL
Python搭建代理IP池实现存储IP的方法
Python搭建代理IP池实现存储IP的方法
|
1天前
|
数据采集 存储 安全
python检测代理ip是否可用的方法
python检测代理ip是否可用的方法
|
3天前
|
Python
python面型对象编程进阶(继承、多态、私有化、异常捕获、类属性和类方法)(上)
python面型对象编程进阶(继承、多态、私有化、异常捕获、类属性和类方法)(上)
25 0
|
8天前
|
机器学习/深度学习 人工智能 算法
|
8天前
|
安全 Python
python字典的内置方法
Python字典主要方法包括:`keys()`(返回所有键)、`values()`(返回所有值)、`items()`(返回所有键值对)、`get()`(安全取值,键不存在时返回默认值)、`setdefault()`(设置默认值)、`update()`(合并字典)、`pop()`(删除并返回值)、`clear()`(清空字典)、`copy()`(浅拷贝)、`fromkeys()`(新建字典并设置默认值)、`popitem()`(随机删除键值对)。
8 0
|
10天前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
【4月更文挑战第9天】本文探讨了Python在自动化测试中的应用,强调其作为热门选择的原因。Python拥有丰富的测试框架(如unittest、pytest、nose)以支持自动化测试,简化测试用例的编写与维护。示例展示了使用unittest进行单元测试的基本步骤。此外,Python还适用于集成测试、系统测试等,提供模拟外部系统行为的工具。在脚本编写实践中,Python的灵活语法和强大库(如os、shutil、sqlite3、json)助力执行复杂测试任务。同时,Python支持并发、分布式执行及与Jenkins、Travis CI等持续集成工具的集成,提升测试效率和质量。
|
12天前
|
Python
1174: 绝对素数(python)
1174: 绝对素数(python)
|
12天前
|
Python
189: 素数判定(python)
189: 素数判定(python)
|
17天前
|
存储 Python
python基础篇: 详解 Python 字典类型内置方法
python基础篇: 详解 Python 字典类型内置方法
26 1

热门文章

最新文章