前言
在前面一堂課程我們學習了 if...else
的條件判斷,讓我們可以根據變數條件判斷執行不同的程式區塊,達到更複雜的邏輯操作,讓程式碼不僅只能依序由上往下執行。而在這堂課程中,我們將要學習迴圈的概念,包括 for loop 和 while 迴圈,並且搭配 if...else
的使用讓我們可以簡化重複的計算或是操作。讓日常生活中需要持續複製貼上的事情,可以透過迴圈來自動完成。
for 迴圈
一般來說,迴圈的用途就在解決重複執行的工作。
# 迭代 簡單來說就是可以透過迴圈一個個取出該物件中的元素
for 變數名稱 in 可迭代物件(Iterators,ex. list, dict 等):
程式區塊
當你覺得重複計算有點繁瑣時,或許就是迴圈派上用場的時候了
一種使用情境如下:
當我們想要取出容器物件內的元素時,例如:list 或是 set。我們可以使用 for 迴圈,一個個取出該物件中的元素:
# list 容器物件中有三個字串物件元素
languages = ['Java', 'Python', 'C']
"""
下面程式會一一印出裡面的元素
Java
Python
C
"""
for language in languages:
print(language)
再舉個例子,今天我們要計算 1-5 的數字加總,若是沒有使用迴圈則需要手動多行重複計算,才能完成任務:
result = 0
result += 1
result += 2
result += 3
result += 4
result += 5
print(result)
換作使用 for 迴圈來實作:
result = 0
# range(起始值, 終止值[不包含], 間隔) 會產生整數的 list
# range(6) 產生 [0, 1, 2, 3, 4, 5] 注意不包含終止值 6
for i in range(6):
# 把 list 元素一一取出
result += i
再回頭看看之前的程式碼,是不是簡潔許多?