python技巧——判断质数(素数)

普通方法一(数因数个数):

x=int(input())
s=0
for i in range(1,x+1):
    if x%i==0:
        s=s+1
if s==2:
    print("yes")
else:
    print("no")

普通方法二(找除1和本身以外的因数):

x=int(input())
#0和1要预处理
if x<=1:
    print("no")
    exit()
    
for i in range(2,x):
    if x%i==0:
        print("no")
        exit()
else:
    print("yes")

普通方法二(找除1和本身以外的因数——优化循环次数后):

x=int(input())
#0和1要预处理
if x<=1:
    print("no")
    exit()
    
for i in range(2,int(x**0.5)+1):
    if x%i==0:
        print("no")
        exit()
else:
    print("yes")

判断质数(素数)的函数

def zs(x):
    #0和1要预处理
    if x<=1:
        return False
    for i in range(2,int(x**0.5)+1):
        if x%i==0:
            return False
    else:
        return True

print(zs(0))
print(zs(1))
print(zs(2))
print(zs(3))
print(zs(4))
print(zs(5))
print(zs(6))