如何用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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM