import math
'''首先是进行素数判断,使用的筛选法构造函数isPrime'''defisPrime(n):
m = math.ceil(math.sqrt(n)+1)for i inrange(2, m):if n%i ==0and i<n:returnFalsebreakelse:returnTrue
n =input("请输入一个大于2的自然数:")
n =int(n)'''由于0,1不是素数但能通过isPrime()函数测试
故而将范围设置为range(2, n + 1 )以求实现[2, n]取值'''list(filter(isPrime,[i for i inrange(2, n+1)]))