for 迴圈

1. 何謂迴圈

結構化的程式是以循序(sequence)、選擇(selection)及重複(repetition)三種基本結構。

程式流程如果遇到重複結構時,會一直重複迴圈敘述,直到某一特定條件不成立,或是一集合體中的所有元素都已巡訪過,程式流程才會脫離迴圈,繼續循序向下執行。換句話說,重複結構就是我們只需撰寫一次,就可以連續多次執行的程式碼區塊。

2. range 函式

rangePython的內建函數,功能是產生一個整數串列,語法如下:

語法:range(終值)
   range(初值,終值[,間隔值])

  1. 初值: 是串列的初始值,為非必要參數。如果省略初值時,則預設串列初值為0
  2. 終值: 是串列的終止值,此為必要參數不可省略。
  3. 間隔值:是串列的間隔值,該值可以為正值、負值或者省略。如果省略時,則預設間隔值為1。假如間隔值是負值,則串列是遞減序列。

[例] 建立 0〜9 串列

range (10)

[例] 建立 1〜6 串列

range (1, 7)

[例] 建立 2、4、6、8、10 串列

range(2, 11, 2)

3 for 敘述

for迴圈通常配合串列來運作,迴圈執行時會依序取出串列元素,指定給迴圈變數,一直到串列內無元素為止。for迴圈敘述要以「:」冒號為結尾,迴圈區塊要往後縮排。如果迴圈區塊只有一行程式碼時,迴圈區塊可以接續在冒號後面。

語法

for 迴圈變數 in 串列:  
     迴圈區塊

  

[例] 使用for迴圈,撰寫一輸出字串的程式。(檔名:for_1.py)

[例] 使用for迴圈,撰寫一計算 1〜10之間所有整數加總,並且輸出計算結果的程式。(檔名:for_2.py)

4 for…else 敘述

for迴圈還可以加上else敘述與else敘述區塊。當for迴圈正常結束後,程式流程會執行else敘述區塊一次,同樣的else敘述要以冒號為結尾,敘述區塊要往右縮排。

語法:

for 迴圈變數  in 串列:  
     迴圈區塊   
else:  
     else 敘述區塊

[例] 使用for...else迴圈,撰寫一個輸出字串內容的程式。程式要求:最後輸出「字串輸出完畢!」。(檔名:for_3.py)


相關主題與延伸閱讀