python快速判断素数
时间: 2023-12-09 17:37:22 浏览: 142
Python 实现多种素数判断算法
以下是两种Python快速判断素数的方法:
1. 传统的判断素数函数
```python
def IsPrime1(n):
if n <= 1:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
```
2. 优化后的判断素数函数
```python
def IsPrime(n):
# 2, 3 单独处理
if n == 2 or n == 3:
return True
# 不在 6 的倍数两侧的不是素数
if n % 6 != 1 and n % 6 != 5:
return False
# 在 6 的倍数两侧的不一定是素数
for i in range(5, int(n ** 0.5) + 1, 6):
# i 的步长可以放大到 6
if n % i == 0 or n % (i + 2) == 0:
return False
return True
```
这两种方法都可以快速判断一个数是否为素数,但是第二种方法在判断大量的素数时速度更快。
阅读全文