生活上經常有許多事情是必須要一直重複做的,像是每天的早餐、午餐、晚餐等等...
在程式語言裡叫做迴圈,當有一段程式碼的內容是需要不斷的重複時就可以使用迴圈。
迴圈一般來說有兩種形式: for 和 while,使用的時機如下:
for較常用於已知的迴圈次數,例如印出10次字串、逐一取出串列的內容等等...當然還有很多應用
while則是要先進行條件式判斷,若條件成立才會執行迴圈中的東西,否則跳出while迴圈,繼續往下執行
目錄:
1. for的語法及範例
2. while的語法及範例
3. for/while居然也有else?
1. for的語法及範例
常見的語法 : for 計數器(變數) in range():
。計數器(變數),這個變數我將它看成計數器,他根據後面的條件或規則去計數,可能是遞增或遞減等等
。range(start,stop,step) 常用於for迴圈中計數器的規則,包含起始值(start)、停止值(stop)及步數(step)。
。當range給予1個參數時,代表停止值(stop),而起始值(start)預設為0,步數(step)預設為1
。當range給予2個參數時,代表起始值(start)、停止值(stop),步數(step)預設為1
。記得for迴圈中執行的內容,一樣是靠著縮排來區別是否位於for迴圈中
範例:
假設有一個陣列 lt_a,要列出來全部的元素,range中的len()是計算陣列的長度也就是元素的個數。
i為計數器,從0開始直到5,共6次,並由第5行逐一列出陣列 lt_a的所有元素。
2. while的語法及範例
常見的語法 : while 條件式:
。條件式可以直接為Ture,這樣迴圈就會一直執行而不會停止
。當條件式成立,就會一直重複執行while迴圈中的內容,否則條件不成立就會跳出while迴圈不再執行裡面的內容
。記得while迴圈中執行的內容,一樣是靠著縮排來區別是否位於while迴圈中
範例:
上一話討論if...elif...else時有一個輸入學生成績轉換成A、B、C、D的範例(第十二話),當時輸入了一次成績並且輸出字串後程式就自己停止了,如果還想要在輸入一次就必須要再執行一次,這樣對於實務操作上不太合理,因此我就可以利用while讓他一直執行!
。利用while且條件一直為True,原本的程式碼全部縮排(反白+tab鍵),以及為了好區別多加了一個虛線,這樣就可以一直重複的輸入拉
。如果在eclispe中停止程式,可以點選紅框處的方形紅色功能,就能終止程式囉!
。想看看!有沒有其他 方法可以停止呢!?
3. for/while居然也有else?
在處理資料時,有時候會遇到,當迴圈條件不成立時,需要做額外的處理,這時候就可以使用else來做搭配
for的範例語法如下:
當a從0開始執行,前三次(0到2)都在for迴圈中,當第四次執行時,已不符合range()的規則,跳出for迴圈,然後執行else中的內容
while的範例語法如下:
當a宣告初始值為0開始執行,前三次(0到2)都在while迴圈中,執行一次a就+1,當第四次執行時,已不符合while後面條件式的規則,跳出while迴圈,然後執行else中的內容
各位有遇到甚麼事情像是迴圈一樣的執行呢?
想利用Eclipse撰寫Python程式嗎?
【Python-入門教學】 第一話 : 如何安裝Python?
【Python-入門教學】 第二話 : 用Python向世界問好! 你的第一支程式碼
【Python-入門教學】 第三話 : 這是數字...? 還是..文字?? 辨別資料的型態(型別)
【Python-入門教學】 第四話 : 變數是...會改變的數字? 變數的介紹
【Python-入門教學】 第五話 : 運算子?邊緣子?傻傻分不清楚。數學的基礎,四則運算加減乘除 - 運算子
【Python-入門教學】 第六話 : 字串就像烤串一樣,可拆可串還可算! - 字串的處理
【Python-入門教學】 第七話 : 資料一串接一串,就用串列來處理 - 串列(List)
【Python-入門教學】 第八話 : 不想讓串列元素隨意更動? 改用元組吧! - 元組(tuple)
【Python-入門教學】 第九話 : 我的『字典』裡沒有~放棄,因為我已經在學py了! - 字典(dict)
【Python-入門教學】 第十話 : 通通有~聽口令~集合! - 集合(set)
留言列表