1. 什麼是迴圈?
迴圈 (Loop) 的概念就是:只要條件成立,就一直重複執行某段程式碼
Python 有兩種常見迴圈:
- for 迴圈 – 重複固定次數或逐一取出序列的元素
- while 迴圈 – 當條件成立時就一直執行,直到條件不成立才停止
2. 為什麼要用迴圈?
可以想像一下:
假如今天你要印出10次「Hello」,如果不用迴圈,就要重複寫10遍一模一樣的程式碼:

10次可能會覺得還好,但如果要印100次就會很麻煩,會很累!
這個時候有了迴圈,只要一行,就能讓程式自動重複執行。
3. for 迴圈 – 重複固定次數
for 是最常用的迴圈,可以搭配 range() 來控制次數
程式範例 :

按下執行鈕後,結果會輸出

- 程式碼中的 range(5) 代表從 0 開始,到 4 結束 (不含 5),一共 5 次
- i 則是迴圈變數,每次迴圈會自動+1
如果想要從1開始到5的話,可以寫成:

結果會輸出

🔑 重點:range(start, stop) 會包含 start,但不包含 stop
start 是從哪裡開始,stop 是「到哪裡結束之前」,換句話說,停在 stop 之前,不會包含 stop。
因為程式常常需要「跑固定次數」,不包含結尾比較方便計算:
- 如果要跑 5 次,只要寫 range(5),就會跑 0,1,2,3,4 → 剛好 5 次
- 如果要從 1 跑到 10,就寫 range(1, 11),因為結尾不含 11,剛好跑到 10
4. while 迴圈 – 重複到條件不成立
while 迴圈會「只要條件成立就一直做下去」
程式範例 :

結果會輸出

- 首先設定一個「變數」為 count,並且把它的值設為 0
- while 是「當……的時候就一直做」,只要 count 這個數字比5小,就一直重複執行下面的程式碼
- 第一次執行時,count 是0,第一次迴圈跑完後,count 會變成1,當 count 變成5時,條件 count < 5 就不成立,迴圈就會停止
- 最後一行需把 count 的值加 1,然後再存回 count 裡面,否則會變成無限迴圈,程式永遠停不下來
5. break 與 continue – 控制迴圈流程
break:立刻跳出整個迴圈
continue:跳過本次迴圈,直接進入下一次
程式範例 :

結果會輸出

- 建立一個 for 迴圈,i 會依序從 1、2、3、4、5 取值
- 當 i 是3的時候,就不執行本次迴圈,直接跳到下一行程式碼
- 如果 i 等於5,就會直接停止整個迴圈,不再繼續跑下去
6. 巢狀迴圈 – 迴圈裡面還有迴圈
巢狀迴圈可以用來處理多層結構,例如列印九九乘法表
程式範例 :

結果會依序輸出1~9的九九乘法表


- range(1, 10) 會依序產生:1, 2, 3, 4, 5, 6, 7, 8, 9
- 這裡又有一個 for 迴圈,表示在 每一個 i 的情況下,再讓 j 從 1 跑到 9
- 所以當 i = 1 時,j 會依序是 1, 2, 3...9,等 j 跑完 1~9,再回到外層,讓 i = 2,再跑 j 的 1~9
- "-" * 10 代表把字元 - 重複 10 次 → "----------",這行會在每個 i 的 1~9 都印完之後,印一條分隔線
- 外層 for 控制 i(決定是哪一行)
- 內層 for 控制 j(決定這一行要印哪些乘法)
- 內層跑完才換下一個 i