如何在Python中检查一个数是否为质数?
时间: 2024-09-25 21:14:50 浏览: 42
Python 函数来判断一个数是否为质数
在Python中,检查一个数是否为质数通常通过一个简单的算法实现。如果一个大于1的自然数除了1和它自身以外没有其他正因数,那么这个数就是质数。下面是一个函数示例,用于检查一个给定的数n是否为质数:
```python
def is_prime(n):
if n <= 1: # 小于等于1的数都不是质数
return False
elif n == 2 or n == 3: # 2和3是特例,它们都是质数
return True
elif n % 2 == 0: # 偶数除以2余数为0,除了2以外的偶数不是质数
return False
else: # 非2的奇数,从3开始逐个检查到其平方根
sqrt_n = int(math.sqrt(n))
for i in range(3, sqrt_n + 1, 2): # 只需考虑奇数因子
if n % i == 0:
return False
return True
```
这个函数首先排除了小于或等于1的数,然后分别处理2和3这两个特殊案例,接着遍历奇数直到达到n的平方根,如果发现有能整除n的因子,则n不是质数。
阅读全文