Python自學——while、for循環

 

一、在Python中for語句塊的基本組成:

在Python中for循環的語句類似於其它的語言中的用法,例如:

names=["scott","bob","alice"]
for name in names:
    print(name)

輸出:scott
           bob
           alice

注意:語句的縮進。

for循環不同於Java中的一點就是,for循環的意義在於遍歷。但是不同於Java中可以存在一種判斷的行爲。

在Java中:

for(int a=9;a<30;a++){
    print(a)
}

即判斷初始值a=9,並循環一次自動加1,當a<30不滿足時推出,否則持續輸出a的值。

輸出:91011……29

二、在Python中while語句塊的基本組成:

while 執行條件:
    執行內容

   循環的意義在於不間斷的重複執行同一段代碼,直到不滿足條件時循環結束。例如計算數據從1加到100,雖然在數學上有相應的公式進行計算,但是如果用程序去執行可以用循環的方法去執行累加。例如:

a=0
b=0
while a<100:
    a+=1
    b+=a
print(b)

二、while和while之間的嵌套:

while 判斷條件:
  執行內容
       while 判斷條件:
            執行內容
...

適用於外層循環一次,內部可能需要循環多次的運算。意思也就是說當第一次滿足外層循環進入條件時,首先進入外層循環開始第一次執行外層循環,當到達內層循環處滿足則進行內層循環。等到不滿足內層循環的時候退出內層循環繼續執行外層循環,例如打印乘法口訣表:

a=1
while a<10:
    b=1
    while a>b or a==b:
        c=b*a
        print(b,"*",a,"=",c,"   ",end='')#end=''輸出不換行
        b += 1
    a+=1
    print("\n")
print("結束")

三、while循環的推出與中斷

首先來認識lian兩個單詞:“break”和“continue”。一個意思爲終止、暫停;一個爲繼續。區別在於break是終止循環體並跳出循環繼續執行循環代碼塊以外的代碼,continue是中止本次的循環,繼續執行下一個循環。簡單來說就是一個是拋棄循環執行其他代碼。一個是仍然在循環中。例如以下代碼:

注意:break和continue針對的是循環!

data=0
while data<10:
    data+=1

print(data)
print("循環已結束")#這是一個正常的循環,共循環10次

#輸出數值:
10
循環已結束

下面是添加了break的循環:

data=0
while data<10:
    data+=1
    break   #當執行完data加一以後,break跳出整個循環,雖然data=1滿足while循環條件仍然不會再循環了
print(data) #循環只執行了一次,轉爲執行循環以外的代碼
print("循環已結束")

#輸出數值:
1
循環一結束就

下面是添加了continue的循環:

data=0
while data<10:
    data+=1
    if data==4:
        continue#當data循環到4的時候執行if語句,隨後continue中斷本次循環所以本次循環不會向下執行
    print(data) #打印data的語句。輸出的數值中缺少了4。因爲是中斷並不是結束所以仍然是執行了10次循環
print("循環已結束")#只是第5次循環data=4的時候中斷了本次的循環。

#輸出數值:
1
2
3
5
6
7
8
9
10
10
#循環已結束

注意:Python和Java語言中while和break,continue意義一樣,只是代碼格式語句會有不同。要記住while是滿足條件執行不滿足退出不能弄混淆了。Python中不要濫用breakcontinue語句。breakcontinue會造成代碼執行邏輯分叉過多,容易出錯。大多數循環並不需要用到breakcontinue語句,部分可以通過改寫循環條件或者修改循環邏輯,去掉breakcontinue語句。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章