如何用python求100以内的素数?

质数(primenumber)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数,如:2、3、5、7、11、13、17、19。

方法一,用for循环来实现

1

2

3

4

5

6

7

8

9

10

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)

方法二,用函数来实现

1

2

3

4

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)

输出结果为:

1

[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]

原文至:https://www.py.cn/jishu/jichu/10363.html

posted @ 2020-12-09 15:06  py小马冲冲冲  阅读(1467)  评论(0)    收藏  举报