素數也叫質數,英文名稱爲prime number,也就是指在一個大於1的自然數中,除了1和該整數的自身外,不可以被其他自然數整除的數,素數在數論中是有着非常重要的地位的。
一般來說,比1大但不是素數的數稱之爲合數,而1和0既非素數也非合數,素數其實是與合數相對立的兩個概念,二者同時構成了數論當中最基礎的定義之一。
在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)] ]
3、
#運用python的itertools模組
具體的指令爲:
from itertools import count
def isPrime(n): www.2cto.com
if n <= 1:
return False
for i in count(2):
if i * i > n:
return True
if n % i == 0:
return False