方法一,用for循环来实现
num=[]; i=2 for i in range(2,100): j=2 for j in range(2,i): if(i%j==0): break else: num.append(i) print(num)
方法二,用函数来实现
import math def func_get_prime(n): return filter(lambda x: not [x%i for i in range(2, int(math.sqrt(x))+1) if x%i ==0], range(2,n+1)) print func_get_prime(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]
实例补充:
def all_prime(num): lst = [] if num <= 1: return '0 ~ %d以内没有任何素数' % num for i in range(2, num+1): for j in range(2, int(i/2)+1): if not i % j: break else: lst.append(i) return lst