python中用filter求素數

2021-09-21 15:09:17 字數 615 閱讀 1400

#

用filter求素數

#生成器,生成乙個無限序列

def_odd_iter():

n=1while

true:

n=n+2

yieldn#

篩選函式

def_not_divisible(n):

return

lambda x:x%n>0

#生成器,不斷返回下乙個素數

defprimes():

yield 2it = _odd_iter()#

初始序列

while

true:

n=next(it)#

返回序列的第乙個數

yield

n it =filter(_not_divisible(n),it)

#由於primes()也是乙個無限序列,所以呼叫時需要設定乙個退出迴圈的條件

#列印1000以內的素數:

for n in

primes():

if n < 1000:

print

(n)

else

:

break

python小練習 利用filter求素數

計算素數的乙個方法是埃氏篩法,它的演算法理解起來非常簡單 首先,列出從2開始的所有自然數,構造乙個序列 2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,取序列的第乙個數2,它一定是素數,然後用2把序列的2的倍數篩掉 3,4,5,6,7,8,9,10,...

python中用beautifulSoup 安裝

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!如果你用的是新版的debain或ubuntu,那麼可以通過系統的軟體包管理來安裝 apt get install python bs4 beautiful soup 4 通過pypi發布,所以如果你無法使用系統包管理安裝,那麼也可以通過 easy ...

python 內建函式filter

filter 函式是 python 內建的另乙個有用的高階函式,filter 函式接收乙個函式 f 和乙個list,這個函式 f 的作用是對每個元素進行判斷,返回 true或 false,filter 根據判斷結果自動過濾掉不符合條件的元素,返回由符合條件元素組成的新list。例如,要從乙個list...