學習 Python迴圈結構之break之判斷素數

2021-10-23 07:41:30 字數 1997 閱讀 8373

任務描述

素數是指在大於 1 的自然數中,除了 1 和它本身以外不再有其他因數的自然數。

想要完成本關任務,我們可以直接使用 while 迴圈。本關介紹的是 break 語句,break 語句可以提前結束迴圈,當迴圈達到我們的目的時,可以很大程度的提高**的執行效率。

break 語句

在之前學習 while 迴圈時,如果我們在執行語句中不改變表示式的結果,那麼**將進入無限迴圈;若是我們無法在執行語句中改變表示式結果呢?這時我們就可以使用 break 語句。break 語句是用於結束當前迴圈。

假設老師想求乙個班上 5 名同學的平均成績,分數都是通過 input 函式獲取,分數的取值範圍為 0-100,假設老師輸入時不小心輸入了乙個超出範圍的值,這時,我們就可以通過 break 語句來結束迴圈。

num = 0

sum_score = 0

while num < 5:

score = int(input()) # 每迴圈一次就輸入乙個值

if score < 0 or score > 100: # 如果輸入的分數小於0或大於100就退出迴圈

print("輸入的資料不合法,請重新輸入")

break

sum_score += score

if num == 4: # num=4的時候表示分數都輸入完成,可以計算平均分

mean_value = sum_score/5

print("平均成績為",mean_value)

num += 1

輸入資料1:

50

66906

10088

執行結果1:

輸入的資料不合法,請重新輸入
輸入資料2:

50

6690

10088

執行結果2:

平均成績為 78.8
當發生迴圈巢狀時,break 語句只能結束當前迴圈。

num = 1

while num < 4:

print("第一次迴圈")

# 正常情況下,表示式為true,第二層迴圈會無限迴圈,但是break語句讓第二層迴圈只執行了一次

while true:

print("第二層迴圈")

break

num += 1

執行結果:

第一次迴圈

第二層迴圈

第一次迴圈

第二層迴圈

第一次迴圈

第二層迴圈

通過結果可以得知,break 每次都是結束當前的第二次迴圈,並沒有結束它的上一級迴圈。

for 迴圈中也可以使用 break 語句,它也只能結束當前的 for 迴圈。

for x in range(5):

if x > 2:

break

print(x)

執行結果:

0

12`

n =

int(

input()

)if n <

2and n >0:

#判斷是否大於1的整數,且1不是素數

print

("不是素數"

)elif n >2:

for i in

range(2

,n):

if n % i ==0:

#判斷2——i是否有能被整除

print

("不是素數"

)break

else

:print

("是素數"

)else

:if n==0:

print

('輸入資料不合法'

)

python迴圈結構之for迴圈

在python中,for迴圈是應用非常廣的迴圈語句,遍歷字典 遍歷列表等等.for語句結構 for 遍歷 in 序列 執行語句 遍歷字典 lipsticks for lipstick in lipsticks print lipsticks lipstick 列印結果 香奈兒 迪奧聖羅蘭 紀梵希阿尼...

Python之迴圈結構

1.while count 0 while count 5 print hello world count 1 count count 1 2.for for i in range 5 print i else print 結束執行.range end 0 end 1 range start,end...

python之迴圈結構

while迴圈結構 格式 while 表示式 語句塊執行流程 當程式執行到while語句時,首先判斷表示式的真假。若表示式的值為真,則執行縮排的語句塊,之後返回表示式繼續判斷 若表示式的值為假,則跳過縮排的語句塊執行。說明 for x in y 語句快 執行流程 x一次代表y種的乙個元素,遍歷結束迴...