1. 程式人生 > >while迴圈continue和break結合迴圈的區別

while迴圈continue和break結合迴圈的區別

while迴圈中continue和break迴圈的區別

1、要理解while迴圈的功能,那麼首先要理解while迴圈的語法,先看如下例項:

# continue用法
i = 1
while i <= 10:
    i += 1
    if i % 2 > 0:
        continue
    print( i )
# while函式有兩個功能,一方面是表示從此處迴圈開始,一方面後面需要跟進迴圈結束的條件

上述示例中

while迴圈有兩個重要的功能:語法上表達迴圈開始,另外一方面,語法要求while後面有限制條件。

2、要理解continue和break兩個迴圈控制的差異,先看如下例項

2.1 continue迴圈例項
i = 1
while i <= 10:
    i += 1
    if i % 2 > 0:
        continue
    print( i )
    
# 第一步 i = 1,while判斷小於10為真,則執行下一步,i更新值為2,繼續執行邏輯判斷,次數的餘數為0,則>0為假,不執行continue,列印當前i
#第二步,i = 2,while判斷小於10為真,則執行下一步,i更新值為3,繼續執行邏輯判斷,次數的餘數為1,則>0為真,執行continue,中斷本次while迴圈
#第三步,i= 3,while判斷小於10為真,則執行下一步,i更新值為4,繼續執行邏輯判斷,次數的餘數為0,則>0為假,不執行continue,列印當前i
#第四步,i = 4,while判斷小於10為真,則執行下一步,i更新值為5,繼續執行邏輯判斷,次數的餘數為1,則>0為真,執行continue,中斷本次while迴圈 # ………… #第十步,i = 10,while判斷小於10為假,則終止所有while迴圈

continue在此處的作用是,從continue開始,如果if條件為真,則continue迴圈控制的本次迴圈結束,開始下一次從while開始的迴圈

# 執行結果
2
4
6
8
10
2.2 break迴圈例項

i = 1
while i < 10:
    i += 1
    if i % 2 > 0:
break print( i ) # 第一步,i= 1,while判斷小於10為真,執行下一步,i更新值為2,繼續執行邏輯判斷,此處的餘數為0,則>0為假,不執行break,列印當前i = 2 # 第二步,i=2,while判斷小於10為真,執行下一步,i更新值為3,繼續執行邏輯判斷,此處的餘數為1,則>0為真,執行break,終止整個while迴圈

break在此處的作用是,從break開始,如果if條件為真,則continue迴圈空值的所有while迴圈結束,開始break以下的新程式碼開始執行語句


# 執行結果
2

如下圖所示

  • continue執行後,將開始新的while迴圈
  • break執行後,整個while迴圈中止,執行break以下的新語句

image

3、函式的簡單呼叫

定義一個線性函式

def new(x):
    a = 3*x + x**2 + 5
    return a

使用列表生成式for迴圈對資料的y值進行計算

b = list(range(1,99,1))
k = [new(x) for x in b]
print(k)

# 輸出如下

[9, 15, 23, 33, 45, 59, 75, 93, 113, 135, 159, 185, 213, 243, 275, 309, 345, 383, 423, 465, 509, 555, 603, 653, 705, 759, 815, 873, 933, 995, 1059, 1125, 1193, 1263, 1335, 1409, 1485, 1563, 1643, 1725, 1809, 1895, 1983, 2073, 2165, 2259, 2355, 2453, 2553, 2655, 2759, 2865, 2973, 3083, 3195, 3309, 3425, 3543, 3663, 3785, 3909, 4035, 4163, 4293, 4425, 4559, 4695, 4833, 4973, 5115, 5259, 5405, 5553, 5703, 5855, 6009, 6165, 6323, 6483, 6645, 6809, 6975, 7143, 7313, 7485, 7659, 7835, 8013, 8193, 8375, 8559, 8745, 8933, 9123, 9315, 9509, 9705, 9903]