重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1、定义判断素数的函数isPrime
创新互联专注于漳州企业网站建设,响应式网站开发,商城系统网站开发。漳州网站建设公司,为漳州等地区提供建站服务。全流程定制制作,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
import math
def isPrime(num):
sqt = int(math.sqrt(num))
for i in range(2, sqt + 1):
if num % i == 0:
return False
return True
2、调用函数并打印结果
a = int(input("请输入一个数字:"))
if isPrime(a):
print(a)
else:
print("不是素数")
3、验证结果
(1)输入的是素数
请输入一个数字:3
3
(2)输入的不是素数
请输入一个数字:12
不是素数
# 判断数N是否素数
def Is_Prime(N):
for i in range(2,int(N**(1/2))+1):
if N % i == 0:
return False
else:
return True
程序缩进如图所示
def is_prime(n):
list_num = []
for i in range(2, n):
for num in range(2, int(sqrt(n))+1):
if i % num == 0 and i != num:
break
elif i % num != 0 and num == (int(sqrt(n))):
list_num.append(i)
return list_num
1、新建python文件,testprimenum.py;
2、编写python代码,求1到100之间的素数;
list1 = []
i = 2
for i in range(2,101):
j = 2
for j in range (2,i):
if i%j == 0:
break
else:
list1.append(i)
print(list1)
3、窗口中右击,选择‘在终端中运行Python文件’;
4、查看执行结果,1-100之间的素数为:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
python求素数:
def is_prime(m):
"""判断m是否素数"""
for i in range(2,int(m**(1/2))+1):
if m % i == 0:
return False
else:
return True
注意事项
定义一个函数并使用input进行范围的输入,同时将将求得的素数保存在num数组中去,便于求得在该范围内素数的总数以及对应的具体值,同时,在本程序中并没有对非法输入的值进行过多的判断,而主要就是为了实现功能。
注意在该函数当中,else是与内循环中的for搭配使用的,如果内循环是由break而终止的,那么else语句是不会被执行的。
先写个函数判断是不是素数,再用filter求出列表里的素数
def isprime(n):
re = True
if n 2:
return False
for i in range(2,n-1):
if n%i == 0:
re = False
return re
re=filter(lambda x:isprime(x),[1,2,3,4,5,6,7])
print re