不再迷茫!手把手的Python入門教學-迴圈

更新於 發佈於 閱讀時間約 3 分鐘
用最直白的語言解釋最複雜的概念,一系列教學​讓你在短時間內掌握 Python

前情提要

  • Python是以“縮排”劃分程式碼,所以如果希望好幾段程式碼在迴圈底下執行,要記得縮排喔!
  • 條件判斷和迴圈在程式中被廣泛使用,靈活運用才是最重要的。
    • 我請AI生成了10份練習題目,想分享給大家,放在最後的連結喔!

迴圈(loop)

迴圈用於重複執行一段程式碼,直到滿足特定條件為止,可以幫助自動執行重複的程式,減少程式碼的冗餘,這邊介紹最常用的 for loop 跟 while loop 。

for迴圈

for迴圈可以讓變數在一個範圍內迭代,或是在字串或串列中遍歷所有元素,主要有以下幾種用法:

  • for i in range([start],[stop],[step]):range() 函數可以產生一個連續的數字範圍,其中參數[start]是起始數字,若無則從0開始,[stop]是結尾數字(需要注意的是結尾數字設定5,範圍最多只會到小於5,也就是4),[step]是步數,預設為1。
  • for i in string:變數 i 會從字串中的第一個字開始遍歷到最後一個字。
  • for i in list:變數 i 會從串列中的第一個元素開始遍歷到最後一個。(串列的概念之後的文章會提到)。

接著來看到下面的範例,以第一個for迴圈為例:

  1. range(5)產生一個迭代區間(0, 1, 2, 3, 4)
  2. i = 0
  3. 輸出 0
  4. 回到迴圈開頭
  5. i = 1
  6. 輸出 1
  7. 依此類推......
  8. i = 4
  9. 輸出 4
  10. 已遍歷到最後一個字,跳出迴圈

for迴圈

for迴圈

while迴圈

while迴圈會在後面加上判斷式,只要條件成立就會持續在迴圈中執行,所以通常會在迴圈中加上某個會持續增加(或減少)的整數變數(就像下方範例中的 count),但要小心不要讓程式產生無限迴圈(就是一直在迴圈裡面跑,沒有足夠的條件跳出迴圈),輕則產生bug,嚴重一點電腦當掉:)

接著一樣來看到下面的範例:

  1. 首先,count = 0 所以 count < 5 成立
  2. 輸出 0
  3. count += 1(相當於count = count + 1) → count = 1
  4. 回到迴圈開頭
  5. count < 5 成立(此時count = 1)
  6. 輸出 1
  7. count += 1 → count = 2
  8. 依此類推......
  9. 輸出 4
  10. count += 1 → count = 5
  11. count < 5 不成立(此時count = 5),跳出迴圈

while迴圈

while迴圈

迴圈控制

Python中有一些關鍵字可以控制迴圈的執行,以下介紹兩個最常用到的:

  • break:跳出整個迴圈
  • continue:直接跳回到迴圈開頭,繼續下一輪
迴圈控制

迴圈控制

這邊來解釋一下上方的範例:

while i < 10: 原則上應該會輸出從 0~9 才對,但因為裡面有一個 if i == 5: 的判斷式,所以當i=5,if裡面的 break 會執行,強制跳出迴圈,但因為在跳出前,已經先執行了 print(i, end=' ') ,所以會輸出到5。

順帶一提,有時候也會直接用 while True:,然後直接在迴圈裡面用 break 控制,像下方範例就能改寫成:

i = 0

while True:

print(i, end = ' ')

if i == 5:

break

i += 1

print('')

然後看到 continue 的範例,一樣 while j < 10: 原則上應該會輸出 0~9 才對,但是因為裡面加上了 if j % 2 == 0: 的判斷式,所以當 j 是偶數時,條件成立,if裡面的 continue 會執行,跳回到迴圈的開頭繼續下一輪,所以只會輸出奇數。

⬇️程式檔放置區⬇️

這個 Python 教學系列的程式檔都放在以下雲端資料夾,如果需要可以自行下載來試試看,請使用 Jupyter Notebook 開啟程式檔,資料夾中附有 Jupyter開檔教學,跟著我一步一腳印學習程式語言吧!


留言
avatar-img
留言分享你的想法!
avatar-img
の倉的程式小天地
1會員
19內容數
熱愛做志工的大學生 誤打誤撞跑去讀資管系 既然來到了資管系,那就學習新技能來幫助他人
2024/08/27
函數是一段可以重複使用的功能性代碼,通常接受輸入並返回輸出(雖然也有很多例外),Python 內建常見的函數有 print( )、input( ) ...,不過參數就像是工具一樣,需要呼叫它才會開始執行 本文將用最簡單的方式讓你了解自定義函數、參數、區域與全域變數、遞迴,同場加映 f-string
Thumbnail
2024/08/27
函數是一段可以重複使用的功能性代碼,通常接受輸入並返回輸出(雖然也有很多例外),Python 內建常見的函數有 print( )、input( ) ...,不過參數就像是工具一樣,需要呼叫它才會開始執行 本文將用最簡單的方式讓你了解自定義函數、參數、區域與全域變數、遞迴,同場加映 f-string
Thumbnail
2024/08/25
If-else 條件判斷是最被廣泛使用的方法,白話來講就是:如果(if)條件成立,就執行縮排底下的程式碼;如果條件不成立,就不會執行,並判斷其它的如果(elif)是否成立,同樣的,條件成立,就執行縮排底下的程式碼;反之,就不會執行,並繼續往下判斷,若以上全部的條件都不成立,就會執行最後一......
Thumbnail
2024/08/25
If-else 條件判斷是最被廣泛使用的方法,白話來講就是:如果(if)條件成立,就執行縮排底下的程式碼;如果條件不成立,就不會執行,並判斷其它的如果(elif)是否成立,同樣的,條件成立,就執行縮排底下的程式碼;反之,就不會執行,並繼續往下判斷,若以上全部的條件都不成立,就會執行最後一......
Thumbnail
看更多
你可能也想看
Thumbnail
孩子寫功課時瞇眼?小心近視!這款喜光全光譜TIONE⁺光健康智慧檯燈,獲眼科院長推薦,網路好評不斷!全光譜LED、180cm大照明範圍、5段亮度及色溫調整、350度萬向旋轉,讓孩子學習更舒適、保護眼睛!
Thumbnail
孩子寫功課時瞇眼?小心近視!這款喜光全光譜TIONE⁺光健康智慧檯燈,獲眼科院長推薦,網路好評不斷!全光譜LED、180cm大照明範圍、5段亮度及色溫調整、350度萬向旋轉,讓孩子學習更舒適、保護眼睛!
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
這篇內容,將會講解什麼是「repeat迴圈」,以及與「repeat迴圈」相關的知識。包括repeat迴圈的簡介、break、continue。
Thumbnail
這篇內容,將會講解什麼是「repeat迴圈」,以及與「repeat迴圈」相關的知識。包括repeat迴圈的簡介、break、continue。
Thumbnail
這篇內容,將會講解什麼是「while迴圈」,以及與「while迴圈」相關的知識。包括while迴圈的簡介、while迴圈、break、continue。
Thumbnail
這篇內容,將會講解什麼是「while迴圈」,以及與「while迴圈」相關的知識。包括while迴圈的簡介、while迴圈、break、continue。
Thumbnail
此章節的目的是介紹Java程式語言中的流程控制結構,包括條件語句(if, else if, else)、三元運算子、switch語句,以及各種迴圈(for, foreach, while)。同時,也解釋了如何在迴圈中使用控制語句來改變程式的執行流程。每種主題都配有示例程式碼以幫助理解。
Thumbnail
此章節的目的是介紹Java程式語言中的流程控制結構,包括條件語句(if, else if, else)、三元運算子、switch語句,以及各種迴圈(for, foreach, while)。同時,也解釋了如何在迴圈中使用控制語句來改變程式的執行流程。每種主題都配有示例程式碼以幫助理解。
Thumbnail
本章節主要介紹了JavaScript中的流程控制,包括條件語句(如if、else if、else和三元運算子)和循環結構(如for迴圈、while迴圈等)。同時,也提供了如何使用break、continue和label來控制迴圈的執行。
Thumbnail
本章節主要介紹了JavaScript中的流程控制,包括條件語句(如if、else if、else和三元運算子)和循環結構(如for迴圈、while迴圈等)。同時,也提供了如何使用break、continue和label來控制迴圈的執行。
Thumbnail
本文是C#入門教程的一部分,涵蓋了流程控制的各種語句與迴圈。這包括if、else if和else語句,三元運算子,switch語句,以及for、foreach和while迴圈。文中還介紹了如何在迴圈中使用break、continue、return和goto語句。
Thumbnail
本文是C#入門教程的一部分,涵蓋了流程控制的各種語句與迴圈。這包括if、else if和else語句,三元運算子,switch語句,以及for、foreach和while迴圈。文中還介紹了如何在迴圈中使用break、continue、return和goto語句。
Thumbnail
本文介紹了Python中的流程控制,包括if, elif, else語句,三元運算子,for和while迴圈,以及控制迴圈語句如break、continue和pass。透過範例程式碼,說明了如何使用這些語句和結構進行條件判斷,迴圈遍歷和控制程式流程。
Thumbnail
本文介紹了Python中的流程控制,包括if, elif, else語句,三元運算子,for和while迴圈,以及控制迴圈語句如break、continue和pass。透過範例程式碼,說明了如何使用這些語句和結構進行條件判斷,迴圈遍歷和控制程式流程。
Thumbnail
今天來介紹python的函式 函式在python中是非常重要的一環,因為到了後期,程式會越來越複雜。 而函式可以想成是容易管理的小程式,當我們需要使用時,只需呼叫即可。
Thumbnail
今天來介紹python的函式 函式在python中是非常重要的一環,因為到了後期,程式會越來越複雜。 而函式可以想成是容易管理的小程式,當我們需要使用時,只需呼叫即可。
Thumbnail
當你需要在 Python 中執行多個任務,但又不希望它們相互阻塞時,可以使用 threading 模組。 threading 模組允許你在單個程序中創建多個執行緒,這些執行緒可以同時運行,從而實現並行執行多個任務的效果。
Thumbnail
當你需要在 Python 中執行多個任務,但又不希望它們相互阻塞時,可以使用 threading 模組。 threading 模組允許你在單個程序中創建多個執行緒,這些執行緒可以同時運行,從而實現並行執行多個任務的效果。
Thumbnail
本文介紹了Python中zip與enumerate函式的使用,以及它們的語法說明和程式範例。zip函式允許同時迭代多個可迭代對象,這使得程式碼更簡潔;而enumerate函式則在迭代時,提供元素的索引,使得實用工具,尤其是當需要追蹤元素的位置時。
Thumbnail
本文介紹了Python中zip與enumerate函式的使用,以及它們的語法說明和程式範例。zip函式允許同時迭代多個可迭代對象,這使得程式碼更簡潔;而enumerate函式則在迭代時,提供元素的索引,使得實用工具,尤其是當需要追蹤元素的位置時。
Thumbnail
關於多執行緒/多行程的使用方式 在Python 3.2版本之後加入了「concurrent.futures」啟動平行任務, 它可以更好的讓我們管理多執行緒/多行程的應用場景,讓我們在面對這種併發問題時可以不必害怕, 用一個非常簡單的方式就能夠處裡, 底下我們將為您展示一段程式碼: imp
Thumbnail
關於多執行緒/多行程的使用方式 在Python 3.2版本之後加入了「concurrent.futures」啟動平行任務, 它可以更好的讓我們管理多執行緒/多行程的應用場景,讓我們在面對這種併發問題時可以不必害怕, 用一個非常簡單的方式就能夠處裡, 底下我們將為您展示一段程式碼: imp
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News