range()。兩者都靠縮排界定主體、標題行尾要加冒號 :。
讀完 / 條件假 → 跳出迴圈執行後續。break 直接跳出;continue 跳過本回合回去判斷。
| 寫法 | 產生 |
|---|---|
range(5) | 0 1 2 3 4(沒有 5) |
range(2, 6) | 2 3 4 5 |
range(1, 10, 2) | 1 3 5 7 9(加梯級) |
range(5, 1, -1) | 5 4 3 2(倒序用負梯級) |
正梯級時起始須小於結束,否則空序列。
s[1:4]'yth'(含頭不含尾)s[-4:]-1 是最後一個 → 'thon's[::2]'Pto's[::-1]'nohtyP'while i<5: ... i+=1 主體裡改變條件,跑完會停。i+=1 → 條件永遠真、停不下來。in / not in 也可當條件;刻意做無窮迴圈用 while True: 並以 break 設出口。
像時鐘分針(外圈)與秒針(內圈)。九九乘法表=外圈被乘數 × 內圈乘數;換行的 print() 屬外圈。
breakcontinue巢狀中兩者都只作用於自己所在那一層;要控制外圈得在外圈寫。
range(5) 是 0~4、沒有 5;倒序要負梯級(range(5,1,-1))。-1 是末。while 漏了改變條件 → 無窮迴圈。break 結束迴圈、continue 跳過本回合;都只作用於所在那一層。寫任何迴圈:先想用 for 還是 while、range 邊界含不含尾、while 會不會停、break/continue 作用在哪一層。